Testador de regex

Escreva um padrão, cole um texto e veja o que casa, grupo por grupo, enquanto digita.

Nível 0 · navegador · ilimitado
56 caracteres
Correspondências2
#1 @9ana@example.com ⟨ana | example⟩
#2 @28BOB@test.com ⟨BOB | test⟩

Expressões regulares em resumo

Uma expressão regular descreve um padrão de texto. \d+ casa um ou mais dígitos, [A-Z] uma letra maiúscula, \b uma fronteira de palavra, (…) captura um grupo, ? torna algo opcional e * repete. As flags mudam o comportamento: g encontra todas as correspondências, i ignora maiúsculas, m faz ^ e $ valerem em cada linha, s deixa o . casar quebras de linha e u ativa o Unicode completo.

Este testador usa o motor do JavaScript, o mesmo do navegador, do Node.js e da maior parte do código front-end, então um padrão que funciona aqui funciona lá. Outras linguagens (Python, PCRE, Java) compartilham a maior parte da sintaxe, mas diferem em detalhes.

Exemplo resolvido

O padrão (\d{3})\.(\d{3})\.(\d{3})-(\d{2}) no texto CPF 123.456.789-09 encontra uma correspondência com os grupos 123, 456, 789 e 09. Com a substituição $1$2$3$4, o texto vira CPF 12345678909.

Evitando padrões lentos

Quantificadores aninhados como (a+)+$ podem levar tempo exponencial em textos quase compatíveis e travar a aba. Prefira classes de caracteres específicas e âncoras.

Como funciona

A página compila o padrão com o RegExp do JavaScript e as flags que você digitou, mostrando erros de sintaxe como o motor descreve. Depois executa o padrão no texto com a flag global para encontrar todas as correspondências; se você não incluiu g, só a primeira aparece, como o exec devolveria. Cada correspondência mostra a posição e os grupos de captura (∅ para um grupo que não participou). Se você informar uma substituição, a página aplica o String.replace, com referências $1, $<nome> e $&. Tudo roda nesta aba.

Perguntas frequentes

Que tipo de regex é este?

JavaScript (ECMAScript). A maior parte da sintaxe é igual à do PCRE, Python e Java, mas lookbehind, grupos nomeados e escapes Unicode seguem as regras do JavaScript.

Como uso um grupo de captura na substituição?

Escreva $1, $2… para grupos numerados ou $<nome> para grupos nomeados. $& insere a correspondência inteira.

Por que só aparece uma correspondência?

Sem a flag g, a regex para na primeira. Acrescente g às flags.

Meu texto é enviado?

Não. A busca roda no navegador.

Fontes

Revisado em 17 de out. de 2026 · vetores de teste fixtures/dev/regex-tester/