Texto 🔒 Roda no seu navegador — nenhum dado é enviado

Localizar e Substituir com Regex

Reescreva texto com uma expressão regular e veja o resultado antes de aplicá-la em arquivos reais.

/ /
Texto de teste
Correspondências e grupos
As correspondências aparecem aqui...

Localizar e Substituir com Regex Online

Localizar e substituir com uma expressão regular é uma das formas mais rápidas de limpar texto, e uma das mais fáceis de errar em mil linhas de uma vez. Esta página abre o Testador de Regex com um exemplo que funciona: o padrão Palavra repetida da Biblioteca de padrões, \b(\w+)\s+\1\b, e a substituição $1. A frase de exemplo volta em Resultado da substituição sem nenhuma palavra duplicada.

Como o exemplo funciona

(\w+) captura uma palavra, \s+ casa com o espaço ou a quebra de linha depois dela, e \1 pede a mesma palavra de novo. O \b em cada ponta impede que ele case dentro de palavras mais longas, então "the theory" fica intacto. Com a flag i, "This this" conta como repetição, e $1 mantém a primeira grafia: "This this is a a typo" vira "This is a typo".

Tokens de substituição

TokenInsere
$1, $2O texto daquele grupo numerado
$<name>O texto de um grupo nomeado, como (?<year>\d{4})
$&A correspondência inteira
$`Tudo o que vem antes da correspondência
$'Tudo o que vem depois da correspondência
$$Um cifrão literal

Teste antes de substituir em massa

A maioria dos desastres de substituição vem de um padrão que casa com mais do que você queria. Cole uma amostra representativa, incluindo linhas que não podem mudar, e leia as correspondências destacadas antes de confiar no resultado. Duas armadilhas são comuns: um .* guloso vai até a última correspondência possível na linha, e sem a flag g só a primeira correspondência é substituída.

Palavras em outros alfabetos

Em JavaScript, \w e \b só conhecem as letras de A a Z, os dígitos e o sublinhado, então o exemplo deixa passar um "café" repetido ou uma palavra persa repetida. Com as flags giu, o padrão (?<![\p{L}\p{N}_])([\p{L}\p{N}_]+)\s+\1(?![\p{L}\p{N}_]) faz o mesmo trabalho em qualquer alfabeto.

Páginas relacionadas

O testador de regex JavaScript explica as flags e o motor por trás desta página, e a regex de URL é um bom padrão para substituir, por exemplo para transformar links soltos em Markdown com [$&]($&). A ferramenta completa, com os 15 padrões prontos, é o Testador de Regex.

Guias relacionados