El módulo de Expresiones Regulares(RE) especifica un conjunto de cadenas(patrón) que coincide con él.
Para entender la analogía de RE, los MetaCaracteres son útiles, importantes y se utilizarán en las funciones del módulo re.
Hay un total de 14 metacaracteres y se discutirán a medida que siguen en las funciones:

\ Used to drop the special meaning of character following it (discussed below) Represent a character class^ Matches the beginning$ Matches the end. Matches any character except newline? Matches zero or one occurrence.| Means OR (Matches with any of the characters separated by it.* Any number of occurrences (including 0 occurrences)+ One or more occurrences{} Indicate number of occurrences of a preceding RE to match.() Enclose a group of REs
  • Función compilar()
    Las expresiones regulares se compilan en objetos patrón, que tienen métodos para varias operaciones como buscar coincidencias de patrones o realizar sustituciones de cadenas.
Python

import re
p = re.compile('')
print(p.findall("Aye, said Mr. Gibenson Stark"))



Salida:


Entendiendo la salida:
La primera ocurrencia es ‘e’ en «Aye» y no ‘A’, ya que se distingue entre mayúsculas y minúsculas.
La siguiente ocurrencia es ‘a’ en «said», luego ‘d’ en «said», seguido de ‘b’ y ‘e’ en «Gibenson», la última ‘a’ coincide con «Stark».
El metacarácter barra invertida ‘\’ tiene un papel muy importante ya que señala varias secuencias. Si la barra invertida se va a utilizar sin su significado especial como metacarácter, utilice’\N-‘

La clase de juego coincidirá con cualquier carácter de espacio en blanco, ‘,’, o,’.

Salida:


Salida:


Python

import re
p = re.compile('ab*')
print(p.findall("ababbaabbb"))



Salida:


Entendiendo la salida:
Nuestro RE es ab*, cuya ‘a’ va acompañada de cualquier número de ‘b’, empezando por 0.
La salida ‘ab’, es válida porque una sola ‘a’ va acompañada de una sola ‘b’.
La salida ‘abb’, es válida por una sola ‘a’ acompañada de 2 ‘b’.
La salida ‘a’, es válida porque tiene una ‘a’ simple acompañada de 0 ‘b’.
Salida ‘abbb’, es válida debido a una sola ‘a’ acompañada de 3 ‘b’.

  • Función split()
    Divide la cadena por las ocurrencias de un carácter o un patrón, al encontrar ese patrón, los caracteres restantes de la cadena son devueltos como parte de la lista resultante.
    Sintaxis :
 re.split(pattern, string, maxsplit=0, flags=0)

El primer parámetro, pattern denota la expresión regular, string es la cadena dada en la que se buscará el patrón y en la que se produce la división, maxsplit si no se proporciona se considera cero ‘0’, y si se proporciona cualquier valor distinto de cero, entonces como máximo se produce esa cantidad de divisiones. Si maxsplit = 1, entonces la cadena se dividirá una sola vez, resultando en una lista de longitud 2. Las banderas son muy útiles y pueden ayudar a acortar el código, no son parámetros necesarios, por ejemplo: flags = re.IGNORECASE, En esta división, se ignorarán las mayúsculas y minúsculas.

Salida:


Salida:


  • Función sub()
    Sintaxis:
 re.sub(pattern, repl, string, count=0, flags=0)

La ‘sub’ en la función significa SubString, se busca un determinado patrón de expresión regular en la cadena dada(3er parámetro), y al encontrar el patrón de subcadena se sustituye por repl(2º parámetro), count comprueba y mantiene el número de veces que esto ocurre.

Salida

S~*ject has ~*er booked alreadyS~*ject has Uber booked alreadyS~*ject has Uber booked alreadyBaked Beans & Spam
  • Función subn()
    Sintaxis:
 re.subn(pattern, repl, string, count=0, flags=0)

subn() es similar a sub() en todos los sentidos, excepto en su forma de proporcionar la salida. Devuelve una tupla con el recuento del total de sustituciones y la nueva cadena en lugar de sólo la cadena.

Salida

('S~*ject has Uber booked already', 1)('S~*ject has ~*er booked already', 2)Length of Tuple is: 2S~*ject has ~*er booked already
  • Función escape()
    Sintaxis:
re.escape(string)

Devuelve la cadena con todos los caracteres no alfanuméricos con barra invertida, esto es útil si se quiere hacer coincidir una cadena literal arbitraria que puede tener metacaracteres de expresión regular.

Python

import re
print(re.escape("This is Awseome even 1 AM"))
print(re.escape("I Asked what is this , he said \t ^WoW"))



Salida

This\ is\ Awseome\ even\ 1\ AMI\ Asked\ what\ is\ this\ \,\ he\ said\ \ \ \^WoW

Este artículo es una contribución de Piyush Doorwar. Si te gusta GeeksforGeeks y quieres contribuir, también puedes escribir un artículo en contribute.geeksforgeeks.org o enviarlo por correo a [email protected]. Verás cómo tu artículo aparece en la página principal de GeeksforGeeks y ayudarás a otros Geeks.
Por favor, escribe comentarios si encuentras algo incorrecto, o quieres compartir más información sobre el tema tratado.

¡Atención geek! Refuerza tus bases con el Curso de Fundamentos de Programación en Python y aprende lo más básico.

Para empezar, tu preparación para la entrevista Mejora tus conceptos de Estructuras de Datos con el Curso DS de Python.

Etiquetas del artículo :

Deja una respuesta

Tu dirección de correo electrónico no será publicada.