Teste de Regex: Como Testar e Depurar Expressões Regulares
As expressões regulares (regex) são padrões usados para corresponder combinações de caracteres em strings. São uma das ferramentas mais poderosas para processamento de texto, permitindo desde validação simples até extração e transformação complexas de texto. No entanto, as regex podem ser notoriamente difíceis de escrever corretamente — um único caractere mal colocado pode mudar todo o significado de um padrão. É aqui que as ferramentas de teste regex se tornam essenciais.
Por Que Precisa de um Testador Regex
Escrever expressões regulares à mão sem as testar é como escrever código sem o executar. Um testador regex fornece:
- Feedback em tempo real: Veja correspondências e não correspondências instantaneamente enquanto escreve.
- Destaque visual: Partes correspondentes do texto são realçadas para inspeção fácil.
- Detalhes dos grupos de captura: Veja o texto exato capturado por cada grupo no seu padrão.
- Deteção de erros: Padrões regex inválidos são sinalizados com mensagens de erro descritivas.
- Múltiplas flags: Teste como flags como global (
g), insensível a maiúsculas/minúsculas (i) e multilinha (m) afetam a correspondência.
A ferramenta Regex Tester & Visualizer no Help2Code fornece todas estas funcionalidades numa única interface.
Compreender os Padrões Regex
Antes de testar regex, ajuda compreender os blocos de construção básicos:
Caracteres Literais
A maioria dos caracteres num padrão regex corresponde a si próprios. Por exemplo, o padrão ola corresponde à string exata "ola" em qualquer lugar do texto.
Metacaracteres
Estes caracteres especiais têm significados específicos em regex:
| Caractere | Significado |
|---|---|
. |
Qualquer caractere único (exceto nova linha) |
^ |
Início de string ou linha (com flag multilinha) |
$ |
Fim de string ou linha |
* |
Zero ou mais do elemento anterior |
+ |
Um ou mais do elemento anterior |
? |
Zero ou um do elemento anterior (opcional) |
| ` | ` |
() |
Agrupamento e captura |
[] |
Classe de caracteres (conjunto de caracteres) |
{} |
Quantificador (número exato ou intervalo) |
\ |
Caractere de escape ou sequência especial |
Classes de Caracteres
As classes de caracteres correspondem a um caractere de um conjunto:
[abc]— Corresponde a a, b ou c[a-z]— Corresponde a qualquer letra minúscula[0-9]— Corresponde a qualquer dígito[^abc]— Corresponde a qualquer coisa exceto a, b ou c
Classes de caracteres predefinidas:
\d— Qualquer dígito (equivalente a[0-9])\w— Qualquer caractere de palavra (letra, dígito, sublinhado)\s— Qualquer espaço branco (espaço, tabulação, nova linha)\D— Qualquer caractere não dígito\W— Qualquer caractere não palavra\S— Qualquer caractere não espaço branco
Quantificadores
Os quantificadores especificam quantas vezes um elemento deve corresponder:
a{3}— Exatamente 3 vezesa{2,4}— Entre 2 e 4 vezesa{3,}— 3 ou mais vezesa*— Zero ou mais (igual a{0,})a+— Um ou mais (igual a{1,})a?— Zero ou um (igual a{0,1})
Padrões Regex Comuns
Validação de Email
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
Correspondência de URL
https?:\/\/[^\s\/$.?#].[^\s]*
Data (AAAA-MM-DD)
\d{4}-\d{2}-\d{2}
Endereço IP (IPv4)
\b(?:\d{1,3}\.){3}\d{1,3}\b
Extrair Todas as Hashtags
#\w+
Como Usar um Testador Regex
Usar a ferramenta Regex Tester & Visualizer é simples:
- Insira a sua string de teste: Cole ou digite o texto onde pretende pesquisar.
- Escreva o seu padrão regex: Insira o padrão no campo de entrada regex.
- Selecione as flags: Escolha entre
g(global),i(insensível a maiúsculas/minúsculas),m(multilinha),s(dotall),u(unicode) ex(verboso). - Veja as correspondências: O texto correspondente é realçado com cores alternadas.
- Inspecione os grupos de captura: Cada grupo de captura é mostrado separadamente com o seu valor correspondente.
- Verifique erros: Padrões inválidos mostram uma mensagem de erro clara.
Conclusão
O teste de expressões regulares é uma habilidade indispensável para programadores, analistas de dados e qualquer pessoa que trabalhe com processamento de texto. Um bom testador regex faz a diferença entre tentativas frustrantes e criação confiante de padrões. Use a ferramenta Regex Tester & Visualizer para testar os seus padrões em tempo real.