Expresiones regulares para fortalecer el conocimiento de Python (3)

Operadores de expresiones regulares de uso común

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

Re biblioteca

Las expresiones regulares (nombres en inglés: expresión regular, regex, RE) son expresiones que se utilizan para expresar de forma concisa un conjunto de cadenas de caracteres. La aplicación principal es la coincidencia de cadenas.

Introducción al modo:

1) .re.I (re.IGNORECASE): Ignorar mayúsculas y minúsculas

2) .re.M (MULTILINE): modo multilínea, cambia el comportamiento de '^' y '$'

3) .re.S (DOTALL): Haga clic en cualquier modo de coincidencia para cambiar el comportamiento de '.'

4) .re.L (LOCALE): hace que la clase de caracteres predeterminada \ w \ W \ b \ B \ s \ S dependa de la configuración regional actual

5) .re.U (UNICODE): hace que la clase de carácter predeterminada \ w \ W \ b \ B \ s \ S \ d \ D dependa del atributo de carácter definido por unicode

6) .re.X (VERBOSO): modo detallado. En este modo, la expresión regular puede tener varias líneas, ignorar los espacios en blanco y agregar comentarios.

Introducción a la función:
Inserte la descripción de la imagen aquí

1 、 re.search (patrón, cadena, banderas = 0)

Busque la primera posición de una expresión regular coincidente en una cadena y devuelva un objeto coincidente.

patrón: representación de cadena o cadena nativa de expresión regular

cadena: la cadena que se emparejará

banderas: banderas de control cuando se utilizan expresiones regulares, qué modo

El primero:

# -*- coding = utf-8 -*-
import re
# 创建模式对象
pat = re.compile("aa") # 此处的aa是正则表达式

reh = pat.search("aaa") # search后的字符串是被校验的字符串
print(reh)
# <re.Match object; span=(0, 2), match='aa'>

El segundo tipo:

pat = re.search("aa","aaa")
print(pat)       
# <re.Match object; span=(0, 2), match='aa'>    

2 、 re.match (patrón, cuerda, banderas = 0)

Haga coincidir la expresión regular desde el principio de una cadena y devuelva el objeto de coincidencia.

patrón: representación de cadena o cadena nativa de expresión regular

cadena: la cadena que se emparejará

banderas: banderas de control cuando se usan expresiones regulares

El primero:

pat = re.match("a","aaaa")
print(pat)  
# <re.Match object; span=(0, 1), match='a'>  

El segundo tipo:

pat = re.compile("a")
p = pat.match("aaaa")
print(p)
# <re.Match object; span=(0, 1), match='a'>

3 、 re.findall (patrón, cuerda, banderas = 0)

Cadena de búsqueda, devuelve todas las subcadenas coincidentes en el tipo de lista.

patrón: representación de cadena o cadena nativa de expresión regular

cadena: la cadena que se emparejará

banderas: banderas de control cuando se usan expresiones regulares

El primero:

pat = re.findall("a","aassaaddd");
print(pat)     
# ['a', 'a', 'a', 'a']     

El segundo tipo:

# 创建模式对象
pat = re.compile("a") # 此处的aa是正则表达式

re = pat.findall("aassaaddd") # search后的字符串是被校验的字符串
print(re)

4 、 re.split (patrón, cadena, maxsplit = 0, banderas = 0)

Cadena de búsqueda, devuelve todas las subcadenas coincidentes en el tipo de lista.

patrón: representación de cadena o cadena nativa de expresión regular

cadena: la cadena que se emparejará

maxsplit: el número máximo de divisiones, la parte restante se emite como el último elemento

banderas: banderas de control cuando se usan expresiones regulares

El primero:

pat = re.split("a","hadhks",2)
print(pat)
# ['h', 'dhks']

5 、 re.finditer (patrón, cadena, banderas = 0)

La cadena de búsqueda devuelve un tipo de iteración del resultado coincidente y cada elemento de iteración es un objeto coincidente.

patrón: representación de cadena o cadena nativa de expresión regular

cadena: la cadena que se emparejará

banderas: banderas de control cuando se usan expresiones regulares

El primero:

pat = re.finditer("a","aabbss")
for i in pat:
    print(i)
# <re.Match object; span=(0, 1), match='a'>
# <re.Match object; span=(1, 2), match='a'>

6 、 re.sub (patrón, respuesta, cadena, recuento = 0, banderas = 0)

Reemplace todas las subcadenas que coincidan con la expresión regular en una cadena y devuelva la cadena reemplazada.

patrón: representación de cadena o cadena nativa de expresión regular

repl: reemplace la cadena que coincide con la cadena

cadena: la cadena que se emparejará

recuento: el número máximo de reemplazos coincidentes

banderas: banderas de control cuando se usan expresiones regulares

El primero:

pat = re.sub("a","b","aaaadddvvv",5)
print(pat)  
# bbbbdddvvv   

Otro uso equivalente de la biblioteca Re:

Uso funcional: operación única

rst = re.search(r'[1-9]\d{5}', 'BIT 100081')

Uso orientado a objetos: múltiples operaciones después de la compilación

pat = re.compile(r'[1-9]\d{5}')
rst = pat.search('BIT 100081')
regex = re.comile(pattern,flags=0)

Compile la forma de cadena de la expresión regular en un objeto de expresión regular

patrón: representación de cadena o cadena nativa de expresión regular

banderas: banderas de control cuando se usan expresiones regulares

Regex es la expresión regular: regex = re.compile (r '[1-9] \ d {5}')

Agregue r antes de la cadena coincidente para evitar caracteres de escape

s = r"'ssssss\'"
print(s)
# 'ssssss\'

Supongo que te gusta

Origin blog.csdn.net/weixin_42272869/article/details/113786457
Recomendado
Clasificación