🔧Toolify

Testador de Regex (correspondências ao vivo, grupos, substituição)

Digite um regex e texto de teste — as correspondências são destacadas ao vivo enquanto você digita. Alterne flags (g/i/m/s/u), inspecione grupos de captura e visualize substituições.

Flags
Correspondências (4)
Hello World, this is a Regex Tester.

Como funciona

O que as flags fazem

g (global): encontra todas as correspondências, não apenas a primeira. Necessário para comportamento de substituição de todas. i (sem distinção de maiúsculas/minúsculas): /[a-z]/i corresponde a ambos os casos. m (multilinha): ^ e $ correspondem nas quebras de linha em vez de apenas no início/fim da string. s (dotall): . também corresponde a novas linhas. u (unicode): tratamento correto de pontos de código acima de 0xFFFF (emoji, CJK em pares substitutos).

A maioria das pessoas começa com /g/i/m. /s/ fica útil para correspondência de texto multilinha. /u/ é recomendado sempre que você puder encontrar emoji ou caracteres não-BMP — sem ele, /./ não corresponderá a um emoji de 4 bytes como um único caractere.

Grupos de captura e substituição

Parênteses criam um grupo de captura: /(\d{4})-(\d{2})/ em '2026-05' captura '2026' e '05' separadamente. Referencie-os como $1, $2 na substituição. Grupos nomeados usam (?<nome>...) e referenciam $<nome> na substituição.

Truques comuns de substituição: $& insere a correspondência completa. $1, $2 etc. inserem grupos de captura. $$ insere um $ literal. A prévia de substituição aqui permite verificar antes de executar o mesmo padrão em um texto real — muito mais seguro do que executá-lo diretamente em dados de produção.

Armadilhas a observar

Escape de barra invertida. Para corresponder a um '.' literal, use '\.'. Em uma string de código-fonte JavaScript isso se torna '\\.' mas nesta ferramenta você digita apenas '\.' pois é a fonte do regex.

Retrocesso catastrófico. Padrões como /(a+)+/ em 'aaaa…!' podem levar uma eternidade. Se o seu teste parecer congelado, seu regex pode ter quantificadores aninhados. Simplifique ou use grupos possessivos/atômicos (não disponíveis no regex JS; use design cuidadoso).

Guloso vs preguiçoso. /<.+>/ em '<a><b>' corresponde a '<a><b>' (guloso). /<.+?>/ corresponde a '<a>' (preguiçoso). Escolha o correto para o seu caso de uso.

Perguntas frequentes

Qual flavour de regex este usa?

Regex ECMAScript do JavaScript (o que o seu navegador implementa). Ele difere ligeiramente do PCRE usado em PHP, .NET ou Python.

Por que o lookbehind não funciona?

Funciona em navegadores modernos — Chrome, Firefox, Safari, Edge suportam (?<=...) e (?<!...) desde 2021. Se o seu não suporta, seu navegador pode estar desatualizado.

O que a flag 'u' faz?

Ativa o tratamento adequado do Unicode. Emoji como 🎉 (que é um par substituto em UTF-16) é tratado como um caractere com /u/ mas dois sem o modo padrão.

Como correspondo a uma tabulação ou nova linha?

\t para tabulação, \n para nova linha, \r para retorno de carro, \s para qualquer espaço em branco incluindo todos esses.

Por que minha substituição não está funcionando?

Na maioria das vezes, você esqueceu a flag 'g' — substituir sem 'g' substitui apenas a primeira correspondência. Ative 'g' para substituir todas.

Posso usar isso para texto muito longo?

Sim, até alguns MB. Além disso, o navegador pode ficar lento. Evite padrões catastróficos (quantificadores aninhados) em entradas longas.

Os dados saem do meu navegador?

Não. Padrão e texto são processados apenas localmente.

Existe uma folha de dicas de regex?

Pesquise 'JavaScript regex cheat sheet'. A página RegExp do MDN é a referência oficial.

Ferramentas relacionadas

Última atualização:

Experimente nossos prompts de IA →