Como usar
- Digite o padrão entre as barras, ou comece por um dos padrões comuns.
- Ative ou desative as flags — g, i, m, s, u, y — para mudar como a busca funciona.
- Cole o seu texto de teste. As correspondências são destacadas e listadas com a posição e os grupos.
- 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.