Expressões Regulares
As expressões regulares (regex) são uma ferramenta poderosa para manipulação de texto. Elas permitem que você pesquise, valide e manipule strings com base em padrões específicos. Python fornece um módulo chamado re
que facilita o uso de expressões regulares. Neste tutorial, vamos explorar o mundo das expressões regulares em Python, entender sua sintaxe e aprender como usá-las para lidar com texto de forma eficaz.
1. Introdução às Expressões Regulares:
Uma expressão regular é uma sequência de caracteres que define um padrão de busca. Por exemplo, o padrão \d{3}
corresponde a três dígitos consecutivos. Aqui está uma visão geral de alguns caracteres especiais comuns em expressões regulares:
.
: Corresponde a qualquer caractere, exceto uma nova linha.\d
: Corresponde a um dígito (0-9).\w
: Corresponde a qualquer caractere alfanumérico (a-z, A-Z, 0-9, e _).\s
: Corresponde a qualquer caractere de espaço em branco (como espaço, tabulação, nova linha).^
: Corresponde ao início da string.$
: Corresponde ao final da string.
2. Usando o Módulo re
em Python:
Para usar expressões regulares em Python, importamos o módulo re
. Existem várias funções úteis disponíveis, como search()
, match()
, findall()
, sub()
, entre outras.
Exemplo 1: Correspondência Básica:
import re
padrao = r"\d{3}"
texto = "123 456 789"
correspondencias = re.findall(padrao, texto)
print(correspondencias) # Saída: ['123', '456', '789']
Neste exemplo, o padrão \d{3}
corresponde a três dígitos consecutivos na string texto
.
Exemplo 2: Substituição de Padrões:
import re
padrao = r"\b\t\b"
texto = "Olá\tMundo"
novo_texto = re.sub(padrao, " ", texto)
print(novo_texto) # Saída: "Olá Mundo"
Neste exemplo, o padrão \b\t\b
corresponde a tabulações e as substitui por espaços.
3. Meta-caracteres e Quantificadores:
Os meta-caracteres, como *
, +
, ?
, {}
, têm significados especiais em expressões regulares.
*
: Corresponde a zero ou mais ocorrências do padrão anterior.+
: Corresponde a uma ou mais ocorrências do padrão anterior.?
: Corresponde a zero ou uma ocorrência do padrão anterior.{n}
: Corresponde exatamente an
ocorrências do padrão anterior.{n,}
: Corresponde an
ou mais ocorrências do padrão anterior.{n,m}
: Corresponde a entren
em
ocorrências do padrão anterior.
Expressões regulares são uma ferramenta poderosa para manipular texto em Python. Elas são amplamente usadas para validação, busca e substituição de padrões em strings. Compreender as expressões regulares pode economizar muito tempo ao lidar com dados de texto complexos.