regex

Parsing

Mecanismo regex avançado

Visão geral regex

O módulo regex é um substituto imediato para o módulo re integrado do Python, oferecendo recursos adicionais, incluindo correspondência difusa (correspondência aproximada de strings), lookbehinds de largura variável, grupos de captura nomeados com capturas repetidas, classes de caracteres POSIX e agrupamento atômico.

regex está disponível emPyRunvia micropip. É particularmente útil quando você precisa combinar padrões com pequenos erros de digitação (correspondência difusa), trabalhar com texto Unicode complexo ou usar recursos regex que não são suportados no módulo re padrão.

Saída de código e execução

Grupos de captura nomeados e correspondência de padrões difusos.

Regex: Named Groups & FuzzyExecutar no 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()}")

Pacotes Relacionados

Recursos Python recomendados

Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.