Testador de regex
Teste uma expressão regular JavaScript ao vivo: correspondências destacadas, grupos de captura e flags g, i, m, s, u. Grátis, sem cadastro.
- Grátis
- Sem cadastro
- Nenhum arquivo enviado
- Windows, Mac, Android, iPhone
Carregando a ferramenta…
Sobre esta ferramenta
Escreva uma expressão regular e veja na hora o que ela encontra no seu texto: correspondências destacadas, posição, grupos numerados e nomeados. O motor é o do JavaScript, o mesmo do Node.js e dos navegadores.
Quando usar
Validar um formato de entrada
CEP, telefone, código de produto, e-mail simples: escreva a expressão, cole exemplos válidos e inválidos e confira se ela aceita os certos e recusa os outros antes de colocá-la num formulário.
Extrair dados de um texto
Datas num log de servidor, valores num extrato, links numa página: os grupos de captura, numerados ou nomeados, mostram exatamente o que seu código vai pegar.
Preparar um localizar e substituir
Antes de rodar uma substituição no projeto inteiro pelo editor, teste a expressão num trecho: você vê cada correspondência destacada e evita substituições indesejadas.
Como usar
- Escreva a expressão, sem barras.
- Marque as flags necessárias.
- Cole o texto de teste e leia as correspondências.
Como funciona
A expressão é compilada pelo motor de expressões regulares do JavaScript, o mesmo do Chrome, Node.js e Deno. A flag g fica sempre ativa para listar todas as correspondências; você pode adicionar i (ignora maiúsculas), m (multilinha), s (o ponto inclui quebras de linha) e u (Unicode).
Para cada correspondência, a ferramenta mostra a posição, o texto encontrado e o conteúdo dos grupos, inclusive grupos nomeados (?<name>…). O texto é destacado onde há correspondências. Para manter a página fluida, a exibição para em 1.000 correspondências. Nada é enviado: a expressão roda no seu navegador.
Dicas para um melhor resultado
- Ancore suas validações com ^ e $: sem eles, “12345-678abc” contém um CEP válido.
- Teste casos-limite: string vazia, espaços no início ou no fim, caracteres acentuados, entradas muito longas.
- Prefira grupos nomeados (?<year>\d{4}): o código que os lê fica bem mais claro.
- Evite quantificadores aninhados como (a+)+: eles podem travar um servidor com uma entrada maliciosa.
- Regex não é a ferramenta certa para analisar HTML ou JSON completos: use um parser de verdade.
Problemas comuns e soluções
Só uma correspondência em vez de todas
Adicione a flag g no seu código; esta ferramenta sempre a ativa para listar todas as correspondências.
O ponto não atravessa linhas
Marque a flag s (dotAll) ou use [\s\S].
A página fica lenta com algumas expressões
Quantificadores aninhados como (a+)+ causam “backtracking catastrófico”: simplifique a expressão.
Perguntas frequentes
Qual sintaxe é usada?
A do JavaScript (ECMAScript), próxima do PCRE: lookbehind, grupos nomeados (?<name>…) e Unicode são suportados.
Como escapar um caractere especial?
Coloque uma barra invertida antes: \. para um ponto, \( para um parêntese.
Meu texto é enviado?
Não, a expressão roda no seu navegador.
O que faz a flag m?
Com m, ^ e $ correspondem ao início e ao fim de cada linha, não do texto inteiro.
Pesquisas relacionadas
Ainda com problema?
Pergunte no fórum: a categoria, a ferramenta, a ficha do seu dispositivo e o resultado do teste são preenchidos para você.