construction
Lexora Tools

Testador de regex

Teste expressões regulares JavaScript ao vivo com destaque de correspondências, grupos de captura, prévia de substituição e guia rápido.

Flags

Padrões comuns

100% privado: tudo roda no seu navegador e nada é enviado.

Guia rápido de regex

.
Qualquer caractere exceto quebra de linha
\d
Um dígito (0–9)
\w
Um caractere de palavra (letra, dígito ou sublinhado)
\s
Um caractere de espaço em branco
[abc]
Um entre a, b ou c
[^abc]
Qualquer caractere exceto a, b ou c
[a-z]
Qualquer caractere entre a e z
^
Início do texto (ou da linha com a flag m)
$
Fim do texto (ou da linha com a flag m)
\b
Limite de palavra
*
Zero ou mais do token anterior
+
Um ou mais do token anterior
?
Zero ou um do token anterior
{n,m}
Entre n e m repetições
*?
Repetição preguiçosa (o mínimo possível)
(abc)
Grupo de captura
(?:abc)
Grupo sem captura
(?<name>abc)
Grupo de captura nomeado
\1
Referência ao grupo 1
a|b
Corresponde a a ou b
(?=abc)
Seguido de abc (lookahead)
(?!abc)
Não seguido de abc
(?<=abc)
Precedido de abc (lookbehind)
(?<!abc)
Não precedido de abc

Como testar uma expressão regular

Sem cadastro e sem instalação: funciona direto no seu navegador.

  1. Passo 1:Digite o padrão entre as barras e ative as flags necessárias, ou comece por um dos padrões comuns.
  2. Passo 2:Cole o texto de teste. As correspondências são destacadas na hora e listadas com posição e grupos de captura.
  3. Passo 3:Opcionalmente, informe uma substituição com $1 ou $<nome> para ver o resultado do String.replace e copie-o.

Perguntas frequentes sobre o testador de regex

Qual sabor de regex este testador usa?

Ele usa o motor JavaScript (ECMAScript) do seu navegador, o mesmo do Node.js, do Deno e do código front-end. A maior parte da sintaxe é comum a PCRE, Python e Java, mas quantificadores possessivos e grupos atômicos não estão disponíveis.

O que fazem as flags g, i, m, s, u e y?

g encontra todas as correspondências em vez da primeira, i ignora maiúsculas e minúsculas, m faz ^ e $ corresponderem a quebras de linha, s permite que o ponto inclua quebras de linha, u ativa o suporte completo a Unicode e y (sticky) só corresponde na posição atual.

Como usar grupos de captura na substituição?

Use $1, $2 etc. para grupos numerados, $<nome> para grupos nomeados, $& para a correspondência inteira e $$ para um cifrão literal.

Por que minha regex está lenta ou sendo interrompida?

Quantificadores aninhados como (a+)+ ou (.*)* podem causar backtracking catastrófico, em que o motor testa um número exponencial de combinações. Deixe os quantificadores mais específicos, use classes de caracteres no lugar do ponto ou ancore o padrão.

Meus dados de teste são privados?

Sim. Os padrões e textos de teste são avaliados localmente em um worker do navegador e nunca são enviados a um servidor.

Teste e depure expressões regulares online

Expressões regulares são uma linguagem compacta para encontrar, validar e transformar texto: verificar e-mails e telefones, extrair IDs de logs, reescrever URLs, analisar linhas de CSV ou limpar a entrada do usuário. Também é muito fácil errar com elas, porque um quantificador fora do lugar ou um escape esquecido pode corresponder a muito mais — ou muito menos — do que você queria. Este testador de regex gratuito mostra cada correspondência enquanto você digita, destaca-a no texto de teste, lista a posição e o conteúdo de cada grupo de captura numerado e nomeado e mostra o resultado de uma substituição com referências $1, $2 ou $<nome>.

O testador usa o motor de regex JavaScript (ECMAScript) do seu navegador, então os resultados são exatamente os mesmos do código em Node.js, TypeScript, React ou no navegador, com suporte às flags g, i, m, s, u e y, grupos nomeados, lookbehind e Unicode. Os padrões rodam em um worker em segundo plano com limite de tempo, então nem um padrão com backtracking catastrófico consegue travar a página. Padrões prontos para e-mails, URLs, endereços IPv4, datas ISO, cores hexadecimais e números ajudam a começar, e o guia rápido integrado explica os tokens mais importantes. Nada do que você digita é enviado — tudo roda localmente.