Ferramentas para Desenvolvedores

Testador de Regex

Teste uma expressão regular no seu texto e veja cada correspondência destacada ao vivo.

Avalie esta ferramenta

Como usar Testador de Regex

  1. Digite a sua expressão regular.
  2. Cole o texto no qual deseja testá-la.
  3. Veja as correspondências destacadas, com os grupos de captura listados abaixo.

Sobre Testador de Regex

Este testador compila a expressão regular que você digitar — com as opções (flags) que marcar — usando o motor de RegExp nativo do JavaScript embutido no seu navegador. Global (g) encontra todas as correspondências em vez de apenas a primeira, ignorar maiúsculas/minúsculas (i) torna as letras insensíveis a caixa, multilinha (m) permite que ^ e $ correspondam ao início e ao fim de cada linha, e dotall (s) permite que . também corresponda a quebras de linha. Em seguida, ele lista cada correspondência com a sua posição e os grupos de captura, e volta a mostrar o seu texto de teste com todas as correspondências destacadas.

É a forma mais rápida de conferir se um padrão faz o que você pensa antes de colocá-lo em código, numa regra de validação ou num find-and-replace. Um detalhe honesto: isto usa especificamente a sintaxe de regex do JavaScript, que difere em alguns pontos da PCRE, do Python ou do Java — lookbehind, grupos nomeados e o significado exato de \d nem sempre são idênticos — portanto um padrão que funciona aqui pode precisar de ajustes noutro lugar. Para manter a exibição rápida, o testador lista no máximo 50 correspondências, avança além das correspondências de comprimento zero para que um padrão vazio não entre em loop infinito, e mostra a mensagem de erro do próprio motor caso o seu padrão não compile.

Tudo acontece inteiramente no seu navegador, portanto o seu padrão e o texto de teste nunca são enviados para nenhum servidor, e você pode testá-los com segurança em dados reais. Para substituições em massa, experimente o localizar e substituir, ou compare dois blocos de texto com o comparador de texto.

Perguntas frequentes

Qual variante (flavor) de regex isto usa?

Usa o motor de RegExp nativo do JavaScript, embutido no seu navegador. Isso difere em alguns pontos da PCRE, do Python ou do Java — recursos como lookbehind, grupos nomeados e o significado exato das classes abreviadas nem sempre são idênticos — portanto um padrão que corresponde aqui pode se comportar de forma diferente noutra linguagem.

O que fazem as opções g, i, m e s?

Global (g) retorna todas as correspondências em vez de apenas a primeira; ignorar maiúsculas/minúsculas (i) corresponde às letras independentemente da caixa; multilinha (m) faz com que os âncoras correspondam ao início e ao fim de cada linha, em vez da string inteira; e dotall (s) permite que o ponto também corresponda a quebras de linha.

Por que ele para de listar após 50 correspondências?

A lista é limitada a 50 itens para que a página continue rápida mesmo com entradas muito grandes. A contagem de correspondências acima da lista continua a refletir o total real; apenas a lista detalhada por correspondência é reduzida.

Por que o meu padrão mostra um erro de expressão inválida?

O padrão não pôde ser compilado pelo motor do JavaScript — geralmente devido a um colchete ou parêntese desbalanceado, uma barra invertida solta, ou uma construção que essa variante não suporta. A mensagem de erro exata do motor é exibida para que você veja o que ele rejeitou.

O meu padrão ou texto de teste é enviado a algum servidor?

Não. A correspondência acontece inteiramente no seu navegador, usando o motor embutido, portanto nada do que você digita é enviado, registrado ou armazenado. Você pode testar com dados reais ou sensíveis com segurança.