Testador de Regex Online

Teste expressões regulares online com destaque das correspondências, grupos de captura e substituição. Grátis, roda no navegador e não envia seu texto.

Flags

2 correspondências com /(?<usuario>\w+)@(?<dominio>[\w.]+)/g

Texto com destaque

Contatos: ana@fazcerto.app.br , joao@exemplo.com

Correspondências

  1. ana@fazcerto.app.br — posição 10 a 29
    • Grupo 1 (usuario) : ana
    • Grupo 2 (dominio) : fazcerto.app.br
  2. joao@exemplo.com — posição 31 a 47
    • Grupo 1 (usuario) : joao
    • Grupo 2 (dominio) : exemplo.com

Como usar

  1. Digite a expressão regular no campo de padrão, sem as barras do início e do fim.
  2. Marque as flags desejadas: g para todas as correspondências, i para ignorar maiúsculas, m, s, u ou y conforme a necessidade.
  3. Cole o texto de teste e veja o destaque, a contagem e a lista de correspondências com seus grupos de captura.
  4. Se quiser reescrever o texto, preencha "Substituir por" usando $1, $2 ou $<nome> e confira o resultado.

Como funciona

Uma expressão regular (regex) é um padrão que descreve conjuntos de textos. Com ela você procura, valida e reescreve trechos sem escrever laços de código: por exemplo, \d{3}-\d{4} encontra sequências como 123-4567. Esta página usa o motor de regex do próprio navegador, o mesmo do JavaScript, então o comportamento é idêntico ao que você terá em um código RegExp no front-end ou em Node.js.

A cada alteração, o padrão é compilado com as flags marcadas e executado sobre o texto. Cada correspondência informa a posição inicial e final, além dos grupos de captura, numerados pela ordem dos parênteses ou identificados por nome quando escritos como (?<nome>...). Se o padrão casa com texto vazio, a busca avança uma posição para nunca entrar em laço infinito, e a lista é limitada às primeiras 1000 correspondências para manter a página rápida.

Exemplo

Com o padrão (?<dia>\d{2})/(?<mes>\d{2})/(\d{4}) e o texto Vence em 30/09/2026, a correspondência é 30/09/2026, com dia igual a 30, mes igual a 09 e o grupo 3 igual a 2026. Em "Substituir por", $3-$<mes>-$<dia> converte a data para 2026-09-30.

Erros mais comuns

  • Esquecer a flag g: sem ela, apenas a primeira correspondência é considerada.
  • Não escapar caracteres especiais: para casar um ponto literal, use \., pois . casa com qualquer caractere.
  • Parênteses ou colchetes sem fechar, que geram o erro de sintaxe mostrado acima.
  • Usar quantificadores gulosos como .* e capturar mais do que o desejado; prefira .*? ou uma classe de caracteres mais restrita.
  • Digitar as barras do literal (/padrao/g): informe só o padrão, e as flags nas caixas.

Perguntas frequentes

Qual dialeto de regex esta ferramenta usa?

O do JavaScript (ECMAScript), executado pelo motor do seu navegador. Recursos de outras linguagens, como grupos atômicos ou modificadores inline do PCRE, podem não funcionar aqui e dão erro de sintaxe.

Para que servem as flags g, i, m, s, u e y?

A g busca todas as correspondências; i ignora maiúsculas e minúsculas; m faz ^ e $ valerem para cada linha; s deixa o ponto casar com quebra de linha; u ativa o modo unicode, necessário para \p{L} e emojis; y exige que cada correspondência comece exatamente na posição seguinte à anterior.

Como usar grupos nomeados na substituição?

Escreva o grupo como (?<nome>...) no padrão e use $<nome> no campo de substituição. Grupos numerados funcionam com $1, $2 e assim por diante, e $& insere a correspondência inteira.

Meu texto é enviado a algum servidor?

Não. Padrão, texto e substituição são processados só no seu navegador. Mesmo assim, evite testar expressões muito complexas em textos enormes: padrões mal escritos podem deixar o navegador lento.