Pular para o conteúdo
ToolMug

Testador de regex

Escreva uma expressão regular, veja cada correspondência destacada enquanto digita, inspecione os grupos de captura e experimente substituições. Usa o motor de regex do JavaScript, e um padrão que demora demais é interrompido em vez de travar a página.

Roda no seu navegador — nada do que você digita é enviado

//g
Padrões comuns:
 
Contact: ada@example.com, grace.hopper@navy.mil
Servers: 10.0.0.1, 192.168.1.255
Date: 2026-09-26

Como usar

  1. Digite o padrão entre as barras, ou comece por um dos padrões comuns.
  2. Ative ou desative as flags — g, i, m, s, u, y — para mudar como a busca funciona.
  3. Cole o seu texto de teste. As correspondências são destacadas e listadas com a posição e os grupos.
  4. Digite uma substituição como $1 ou $<name> para ver a prévia de um localizar e substituir.

Opções explicadas

g (global)
Encontra todas as correspondências em vez de parar na primeira. A lista sempre mostra todas as correspondências; g afeta a substituição.
i (ignorar maiúsculas)
As letras correspondem sem diferenciar maiúsculas de minúsculas.
m (multilinha)
^ e $ correspondem ao início e ao fim de cada linha, e não do texto inteiro.
s (dotAll)
O . também corresponde a quebras de linha.
u (unicode)
Trata o padrão como pontos de código Unicode, habilitando os escapes de propriedade \p{…} e o tratamento correto de emoji.
y (sticky)
Só corresponde exatamente na posição em que a correspondência anterior terminou.

Referência rápida

Sintaxe Corresponde a
\d \w \s Dígito, caractere de palavra, espaço em branco
[abc] [^abc] [a-z] Um destes, nenhum destes, intervalo
* + ? {2,5} 0 ou mais, 1 ou mais, 0 ou 1, entre 2 e 5
*? +? Preguiçoso — o mínimo possível
^ $ \b Início, fim, limite de palavra
(…) (?:…) (?<name>…) Grupo de captura, sem captura, nomeado
(?=…) (?!…) (?<=…) (?<!…) Lookahead, lookahead negativo, lookbehind, lookbehind negativo
\p{L} \p{Script=Han} Qualquer letra, caracteres chineses (com a flag u)

Exemplo

O padrão (?<user>[\w.+-]+)@(?<domain>[\w-]+(?:\.[\w-]+)+) aplicado a ada@example.com dá user = ada e domain = example.com; a substituição $<domain>/$<user> produz example.com/ada.

Perguntas frequentes

Que tipo de regex é usado?

JavaScript (ECMAScript 2024), como implementado pelo seu navegador. A maior parte da sintaxe é compartilhada com PCRE, Python e Java, mas lookbehind, grupos nomeados e escapes Unicode variam um pouco entre os motores, então teste na linguagem que você vai usar.

Por que apareceu que o padrão foi interrompido?

Alguns padrões, como (a+)+$ em uma longa sequência de letras a, fazem o motor tentar um número exponencial de combinações — o chamado backtracking catastrófico. O testador roda em uma thread em segundo plano e para depois de 1,5 segundo. Reescreva os quantificadores aninhados ou use classes de caracteres mais específicas.

Como uso grupos de captura na substituição?

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

Meu texto é enviado para algum lugar?

Não. A busca roda em um Web Worker no seu navegador, então os logs e dados que você testa ficam no seu dispositivo.

Privacidade

Esta ferramenta funciona inteiramente no seu navegador. Seus arquivos e textos são processados no seu dispositivo e nunca são enviados aos nossos servidores.

Ferramentas relacionadas