regex

Parsing

Motor de expresiones regulares avanzado

Descripción general regex

El módulo regex es un reemplazo directo del módulo re integrado de Python y ofrece características adicionales que incluyen coincidencia difusa (coincidencia aproximada de cadenas), búsqueda hacia atrás de ancho variable, grupos de captura con nombre con capturas repetidas, clases de caracteres POSIX y agrupación atómica.

La expresión regular está disponible enPyRuna través de micropip. Es particularmente útil cuando necesita hacer coincidir patrones con ligeros errores tipográficos (coincidencia difusa), trabajar con texto Unicode complejo o usar funciones de expresiones regulares que no son compatibles con el módulo re estándar.

Código y salida de ejecución

Grupos de captura con nombre y coincidencia de patrones difusos.

Regex: Named Groups & FuzzyEjecutar en el editor
import regex

# Named capture groups — parse a log line
log = "2025-07-04 14:32:01 ERROR [auth] Login failed for user@example.com"
pattern = r"(?P<date>\d{4}-\d{2}-\d{2}) (?P<time>\d{2}:\d{2}:\d{2}) (?P<level>\w+) \[(?P<module>\w+)\] (?P<message>.+)"
m = regex.match(pattern, log)
if m:
    for k, v in m.groupdict().items():
        print(f"  {k:<10}: {v}")

# Fuzzy matching — find 'colour' with up to 1 error
print("\nFuzzy search (≤1 substitution):")
text = "I prefer colour and cilor and colouur"
for hit in regex.finditer(r"(?:colour){s<=1}", text):
    print(f"  found '{hit.group()}' at {hit.span()}")

Paquetes relacionados

Recursos recomendados de Python

Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.