[ publicidade ]

Testador de Expressões Regulares

Escreva um padrão, ative as flags e veja instantaneamente as correspondências destacadas, cada grupo capturado e o resultado de substituições, usando o motor de regex do JavaScript.

Expressão regular

//g

Texto de teste

Destaque · 0 correspondência(s)

Contatos: [email protected], [email protected]
Inválido: user@localhost

Grupos capturados

Substituição

Usar via API

Expressões regulares arbitrárias podem causar backtracking catastrófico (ReDoS) e travar o servidor. No navegador, a ferramenta isola cada execução em um Web Worker com timeout; esse isolamento não existe no runtime da API.

[ publicidade ]

Como usar

  1. Digite o padrão sem as barras delimitadoras.
  2. Ative as flags necessárias (g, i, m, s, u, y).
  3. Cole o texto de teste e veja as correspondências destacadas.
  4. Inspecione os grupos numerados e nomeados de cada correspondência.
  5. Teste substituições usando $1, $<nome> e $&.

Casos de uso

  • Validar formatos como e-mail, CPF, CEP e telefone antes de usar em formulários.
  • Extrair dados de logs e arquivos de texto.
  • Montar padrões de busca e substituição para refatorações em massa no editor.
  • Depurar regex que falham em produção.

Conceitos técnicos

Flags

g encontra todas as correspondências, i ignora maiúsculas e minúsculas, m faz ^ e $ funcionarem por linha, s faz o ponto corresponder a quebras de linha, u ativa o modo Unicode completo (necessário para \p{L}) e y exige correspondência exatamente na posição atual.

Grupos de captura

Parênteses criam grupos numerados; (?<nome>...) cria grupos nomeados, acessíveis por $<nome> na substituição. Use (?:...) para agrupar sem capturar, o que deixa o padrão mais rápido e a numeração mais limpa.

Backtracking catastrófico

Quantificadores aninhados como (a+)+ podem levar o motor a testar um número exponencial de caminhos, travando a aplicação (ReDoS). Esta ferramenta executa a regex em um Web Worker com limite de 1 segundo, interrompendo padrões problemáticos sem congelar a página.

Perguntas frequentes

Qual sabor de regex é usado?

O motor ECMAScript do seu navegador. A sintaxe é muito próxima de PCRE, mas recursos como lookbehind de tamanho variável e grupos atômicos podem diferir de outras linguagens.

Por que só aparece uma correspondência?

Sem a flag g, apenas a primeira correspondência é retornada. Ative g para listar todas.

Existe limite de correspondências?

São exibidas até 1000 correspondências para manter a interface responsiva; o contador indica quando há mais.

Ferramentas relacionadas