Ejemplos de expresiones regulares de Python

Ejemplos De Expresiones Regulares De Python



La forma completa de expresión regular es expresión regular. Es una característica importante de cualquier lenguaje de programación. Es un patrón de cadena que se utiliza para hacer coincidir, buscar o reemplazar las cadenas en un valor de cadena. El patrón de expresiones regulares se puede utilizar en el script de Python utilizando el módulo 're' de Python. Este módulo tiene muchos tipos de funciones para realizar diferentes operaciones de cadenas. Se utilizan diferentes metacaracteres y secuencias especiales para definir los patrones de expresiones regulares para buscar o reemplazar las tareas. En este tutorial se muestran los propósitos del uso de algunos metacaracteres, secuencias especiales y métodos de expresiones regulares de uso común en el script de Python.

Algunos metacaracteres comúnmente utilizados en expresiones regulares:







 



Caracteres Objetivo
‘+’ Se utiliza para hacer coincidir una o más apariciones de un carácter particular en una cadena.
‘*’ Se utiliza para hacer coincidir cero o más apariciones de un carácter particular en una cadena.
‘?’ Se utiliza para hacer coincidir cero o una aparición de un carácter particular en una cadena.
‘^’ Se utiliza para hacer coincidir el carácter o cadena particular al comienzo de la cadena.
‘$’ Se utiliza para hacer coincidir el carácter o cadena particular al final de la cadena.
‘|’ Se utiliza para hacer coincidir cualquiera de las múltiples cadenas de una cadena. Funciona como la lógica OR.
‘[]’ Se utiliza para unir una variedad de personajes.
‘{}’ Se utiliza para hacer coincidir un número específico de caracteres.

 



Algunas secuencias especiales de uso común en expresiones regulares:





 

Secuencias Objetivo
'\A' Se utiliza para hacer coincidir el carácter particular al comienzo de la cadena. Funciona como el carácter '^'.
'\b', '\B' '\b' se utiliza para hacer coincidir la cadena que contiene el carácter o palabra en particular al principio o al final de la cadena. '\B' funciona de manera opuesta a '\b'.
'\d', '\D' '\d' se utiliza para hacer coincidir el número decimal en la cadena que es similar a '[0-9]'. '\D' funciona de manera opuesta a '\d'.
'\s', '\S' '\s' se utiliza para hacer coincidir el espacio en blanco en la cadena que es similar a '[\n\t\r\v]'. '\S' funciona de manera opuesta a '\s'.
'\w', '\W' '\w' se utiliza para hacer coincidir los caracteres alfabéticos y numéricos de la cadena. '\W' funciona de manera opuesta a '\w'.
'\CON' Se utiliza para hacer coincidir el carácter particular al final de la cadena. Funciona como el carácter “$”.

Ejemplo 1: hacer coincidir la cadena usando la función Match()

La función match() se utiliza para hacer coincidir un patrón de expresiones regulares al comienzo de la cadena. La sintaxis de esta función se proporciona de la siguiente manera:



Sintaxis:

revancha ( patrón, cuerda, banderas = 0 )

 

Aquí, el primer argumento se utiliza para definir el patrón de expresiones regulares. El segundo argumento se utiliza para definir la cadena principal. El tercer argumento es opcional y se utiliza para definir diferentes tipos de banderas.

Cree un archivo Python con el siguiente script que coincida con un patrón de expresiones regulares con una cadena definida usando la función match(). Primero, se utiliza un patrón de expresiones regulares definido para hacer coincidir. A continuación, se toma una palabra de búsqueda del usuario y se utiliza como patrón de expresión regular para hacer coincidir con el valor de la cadena. Si se encuentra alguna coincidencia, se imprime la palabra de búsqueda. De lo contrario, se imprime la cadena 'No se encontró ningún valor coincidente'.

#Importar módulo necesario
importar re

#Defina la función para imprimir el resultado coincidente
def matchString ( ) :
    #Verifique el valor de retorno de la función match()
    si junto con ! = Ninguno:
imprimir ( ''' + mat.group ( ) + '' se encuentra en '' + strValor + ''' )
demás:
imprimir ( 'No se encontró ningún valor coincidente.' )

#Definir el valor de la cadena
strValor = 'Primero en entrar primero en salir.'
#Haz coincidir la cuerda según el patrón.
mat = re.match ( '^Primero' , strValor )
#Llamar a la función para imprimir el resultado del partido
cadena de coincidencia ( )

#Toma la cadena de búsqueda
enValor = entrada ( 'Ingrese el valor de búsqueda: ' )
mat = re.match ( inValue +, strValue )
#Llamar a la función para imprimir el resultado del partido
cadena de coincidencia ( )

 

Aparece el siguiente resultado para el “primer” valor de entrada:

Ejemplo 2: buscar la cadena usando la función Findall()

La función findall() se utiliza para devolver todas las palabras coincidentes que se encuentran en la cadena principal como una tupla.

Sintaxis:

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

 

Aquí, el primer argumento se utiliza para definir el patrón de expresiones regulares. El segundo argumento se utiliza para definir la cadena principal. El tercer argumento es opcional y se utiliza para definir diferentes tipos de banderas.

Cree un archivo Python con el siguiente script que toma un valor de cadena principal y un valor de cadena de búsqueda del usuario. A continuación, utilice la palabra de búsqueda en el patrón de expresiones regulares para encontrar la palabra de búsqueda en la cadena principal. El número total de coincidencias se imprime en el resultado.

#Importar módulo necesario
importar re

#Tomar un valor de cadena
enValor = entrada ( 'Ingrese una cadena: ' )

#Toma una palabra de búsqueda
srcValue = entrada ( 'Ingrese una palabra de búsqueda: ' )

#Busca la palabra en la cadena
srcResult = re.findall ( valorsrc+ '\En*' , en valor )
#Imprimir el resultado de la búsqueda
imprimir ( 'La palabra '' + valor src + '' se encuentra en la cadena '
+ cadena ( solo ( srcResultado ) ) + 'veces'. )

 

Según el resultado, la palabra de búsqueda 'comer' se encuentra dos veces en la cadena principal 'Comemos para vivir y no vivimos para comer'.

Ejemplo 3: buscar la cadena usando la función Search()

La búsqueda() es otra función para buscar un patrón particular en un valor de cadena. Contiene los mismos argumentos que las funciones match() y findall(). Cree un archivo Python con el siguiente script que busque la palabra 'Python' en un valor de cadena que se tomará del usuario. Si la palabra de búsqueda existe en el valor de entrada, se imprime un mensaje de éxito. De lo contrario, se imprime un mensaje de error.

#Importar re módulo
importar re

#Tomar un valor de cadena
enValor = entrada ( 'Ingrese una cadena: ' )
#Buscar la palabra particular en el valor de la cadena
srcResult = re.búsqueda ( r 'Python\w*' , en valor )

#Compruebe que la palabra de búsqueda se encuentre o no
si srcResultado:
imprimir ( ''' + srcResult.group ( ) + '' se encuentra en '' + en valor + ''' )
demás:
imprimir ( 'No se encontró la cadena de búsqueda'. )

 

Producción:

El siguiente resultado aparece si la cadena de entrada es 'Me gusta la programación en Python':

El siguiente resultado aparece si la cadena de entrada es 'Me gusta la programación PHP':

Ejemplo 4: reemplazar la cadena usando la función Sub()

La función sub() se utiliza para buscar una cadena particular según el patrón y reemplazarla con otra palabra. La sintaxis de esta función se proporciona de la siguiente manera:

Sintaxis:

re.sub ( patrón, reemplazar_cadena, cadena_principal )

 

El primer argumento de esta función contiene el patrón que se utiliza para buscar la cadena particular en la cadena principal.

El segundo argumento de esta función contiene el valor de cadena 'reemplazar'.

El tercer argumento de esta función contiene la cadena principal.

Esta función devuelve la cadena reemplazada si existe alguna palabra coincidente en la cadena principal según el primer argumento.

Cree un archivo Python con el siguiente script que busque dos dígitos al final de la cadena. Si la cadena contiene dos dígitos al final, los dígitos se reemplazan por la cadena '$50'.

#Importar re módulo
importar re

#Definir la cadena principal
strValor = 'El precio del libro es 70'

#Definir el patrón de búsqueda
patrón = '[0-9]{2}'

#Definir el valor de reemplazo
reemplazarValor = '$50'

#Buscar y reemplazar la cadena según el patrón
modificado_strValue = re.sub ( patrón, reemplazarValor, strValue )
#Imprimir los valores de cadena originales y modificados
imprimir ( 'Cadena original: ' + strValor )
imprimir ( 'Cadena modificada: ' + valor_str_modificado )

 

Producción:

Había 70 al final de la cadena principal. Entonces, el 70 se reemplaza por $50 en la cadena reemplazada.

Ejemplo 5: reemplazar la cadena usando la función Subn()

La función subn() funciona como la función sub(), excepto que devuelve la salida como una tupla donde el primer índice contiene el valor reemplazado y el segundo índice contiene el número total de coincidencias.

Cree un archivo Python con el siguiente script que busca los alfabetos de la A a la L en la cadena 'LinuxHint.com' usando la función subn():

#Importar re módulo
importar re

#Definir la cadena principal
strValor = 'LinuxHint.com'

#Definir el patrón de búsqueda
patrón = '[A-L]'

#Definir el valor de reemplazo
reemplazarValor = '*'

#Buscar y reemplazar la cadena según el patrón
modificado_strValue = re.subn ( patrón, reemplazarValor, strValue )
#Imprimir la cadena original y la salida de subn()
imprimir ( 'Cadena original: \norte ' + strValor )
imprimir ( 'Salida de la función subn(): ' )
imprimir ( valor_strmodificado )

 

Producción:

Según el siguiente resultado, los caracteres 'L' y 'H' se reemplazan por el carácter '*'.

Ejemplo 6: dividir la cadena usando la función Split()

Cree un archivo Python con el siguiente script que usó la función split() para dividir la cadena principal en varias partes según el patrón de expresiones regulares:

#Importar re módulo
importar re

#Definir valor de cadena
strVal= 'Rupa Akter; Nira Chowdhury; Mazharul Islam'
#Definir el patrón que se utilizará para dividir los datos.
patrón = '[^A-Za-z]'
#Almacenar los valores divididos en una lista
split_result = re.dividir ( patrón, strVal )
imprimir ( 'Salida de la función split():' )
imprimir ( resultado_dividido )

 

Producción:

Según el resultado, la cadena principal se divide en tres partes según el patrón “[^A-Za-z]” que se utiliza en el script.

Conclusión

En este tutorial se muestra el propósito de los metacaracteres, rangos y funciones integradas de Python más utilizados para buscar, reemplazar y dividir cadenas utilizando scripts simples de Python.