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.
2 correspondências com /(?<usuario>\w+)@(?<dominio>[\w.]+)/g
Texto com destaque
Contatos: ana@fazcerto.app.br , joao@exemplo.com
Correspondências
ana@fazcerto.app.br— posição 10 a 29- Grupo 1 (
usuario) :ana - Grupo 2 (
dominio) :fazcerto.app.br
- Grupo 1 (
joao@exemplo.com— posição 31 a 47- Grupo 1 (
usuario) :joao - Grupo 2 (
dominio) :exemplo.com
- Grupo 1 (
Como usar
- Digite a expressão regular no campo de padrão, sem as barras do início e do fim.
- Marque as flags desejadas: g para todas as correspondências, i para ignorar maiúsculas, m, s, u ou y conforme a necessidade.
- Cole o texto de teste e veja o destaque, a contagem e a lista de correspondências com seus grupos de captura.
- 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.