Regex testador

Teste, combine, substitua e dividisse texto usando expressões regulares com validação em tempo real

Padrão de expressão regular

//gVálido

String de teste

Caracteres: 0Linhas: 1

Resultado

Referência rápida regex

Classes de personagens

\\d - Digits (0-9)
\\w - Word characters
\\s - Whitespace
. - Any character

Quantificadores

* - 0 or more
+ - 1 or more
? - 0 or 1
{n,m} - Between n and m

Âncoras

^ - Start of string
$ - End of string
\\b - Word boundary
\\B - Non-word boundary

Testador de Regex - Testar Expressões Regulares Online

Um testador de regex online ajuda você a criar, depurar e entender expressões regulares com feedback instantâneo. Use esta ferramenta de regex para validar emails, extrair IDs, normalizar espaços em branco, analisar logs ou substituir texto com segurança. Com exemplos claros e destaque em tempo real, você aprende conceitos essenciais — classes de caracteres, grupos, quantificadores, âncoras e lookarounds — sem precisar memorizar todos os símbolos. Esta página foca em casos práticos do dia a dia de desenvolvedores, evitando problemas de performance e mantendo padrões legíveis e fáceis de manter.

Fundamentos de Regex: padrões, flags e classes de caracteres

Uma expressão regular descreve conjuntos de strings usando literais e metacaracteres. Elementos comuns incluem ponto (.) para qualquer caractere, âncoras (^) e ($) para início e fim, quantificadores (* + ? {m,n}) para repetição, classes de caracteres ([a-z], \d, \w, \s), grupos (( ... )) para capturar trechos e alternância (a|b) para opções. Flags como g (global), i (ignore case), m (multiline), s (dotall) e u (Unicode) alteram o comportamento da busca. Esses recursos permitem criar validadores e processadores de texto poderosos.

Padrões práticos para usar imediatamente

Email (validação simples de interface): ^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$ cobre casos comuns. URL básica: ^https?:\/\/[^\s/$.?#].[^\s]*$ filtra links http/https. Data ISO: ^\d{4}-\d{2}-\d{2}$ corresponde a YYYY-MM-DD. Normalização de espaços: substitua \s{2,} por um único espaço globalmente. Extração de IDs: /(PROJ-\d+)/ captura chaves de tickets. Ajuste sempre ao seu contexto real.

Passo a passo: construir, testar e ajustar

Comece com um exemplo concreto. Adicione literais, depois generalize com classes e quantificadores. Use âncoras para restringir o local do match e grupos de captura para extrair partes específicas. No testador de regex, analise os grupos retornados e teste diferentes flags. Se corresponder demais, torne o quantificador preguiçoso (.*?) ou refine a classe. Se corresponder de menos, relaxe restrições desnecessárias.

Limites, lookarounds e Unicode

Limites de palavra (\b) são úteis, mas nem todos os mecanismos tratam Unicode da mesma forma. Use a flag u quando disponível. Lookaheads (?=...) e lookbehinds (?<=...) verificam contexto sem consumir caracteres — ideal para validar números precedidos por símbolo de moeda ou extrair partes específicas após prefixos conhecidos.

Performance e backtracking catastrófico

Quantificadores ambíguos e aninhados podem causar backtracking catastrófico, gerando lentidão extrema. Evite padrões como (a+)+ ou (.*)+. Para manter performance: seja específico nas classes, evite quantificadores aninhados, utilize grupos atômicos quando possível e ancore padrões para reduzir o espaço de busca. Teste sempre com textos longos antes de usar em produção.

Buscar e substituir com segurança

Para substituições, teste cuidadosamente grupos e referências. Exemplo: para trocar 'Doe, Jane', use ^([^,]+),\s*(.+)$ e substitua por $2 $1. Cada linguagem trata referências de grupo de forma diferente ($1, \1 ou nomeadas), então valide antes de aplicar em massa.

Estratégia de testes e manutenção

Trate regex como código: escreva exemplos positivos e negativos, adicione testes unitários e documente partes complexas. Prefira clareza em vez de construções excessivamente compactas. Se o padrão representar regras de negócio, documente sua finalidade.

Further reading

Use o testador de regex online para iterar com segurança, documentar padrões e manter expressões simples e específicas. Prefira classes claras, padrões ancorados e uso moderado de lookarounds para equilibrar precisão e desempenho.

Advertisement