Português (Brasil)

Localizar e substituir texto, com regex opcional

Substitua todas as correspondências de uma só vez, literalmente ou por uma expressão regular JavaScript

A ferramenta é carregada aqui. Precisa de JavaScript, pois o trabalho acontece no seu dispositivo.

Seus arquivos e sua privacidade

A pesquisa, a substituição e o texto a que são aplicados ficam todos nesta aba do navegador. Nada é carregado e nada é salvo automaticamente, então um arquivo de configuração ou um bloco de origem o código colado aqui não deixa cópia depois que você recarrega a página ou seleciona Limpar dados.

O que esta ferramenta faz

Pesquise um bloco de texto e substitua todas as correspondências de uma vez, por expressões regulares opcionais, distinção entre maiúsculas e minúsculas e correspondência de palavras inteiras. Um padrão inválido é relatado como uma mensagem e seu texto permanece intocado.

Ele encontra todas as ocorrências de um termo de pesquisa, substitui todas elas em uma única passagem e informa quantas substituições foram feitas. Três opções alteram a forma como o termo é lido: Regex trata-o como uma expressão regular em vez de caracteres literais, a distinção entre maiúsculas e minúsculas é ativada por padrão e pode ser desativado, e a palavra inteira requer um limite de palavra em cada extremidade para que um procure por folhas de gato concatenadas sozinhas. Um padrão que não será compilado produz um erro mensagem e nenhuma alteração, o que é importante porque um padrão digitado pela metade é uma etapa normal em direção a um trabalho.

Como usar

  1. Cole seu texto na caixa e digite o termo de pesquisa e a substituição nos dois campos.
  2. Deixe o Regex desativado para corresponder ao termo literalmente; cada caractere especial nele é escapado, então um ponto final corresponde a um ponto final e nada mais.
  3. Ative o Regex quando precisar de um padrão e use $1, $2 e assim por diante na substituição para referenciar seus grupos de captura.
  4. Selecione Substituir tudo e leia a contagem relatada posteriormente. Se não é o que você esperado, selecione Desfazer e refine o padrão.

Exemplos de casos de uso

Entrada e saída suportadas

Aceita

Produz

O que esta ferramenta não fará

Erros comuns

Notas técnicas

No modo literal, cada metacaractere de expressão regular no termo de pesquisa tem escape antes da compilação, então ele só pode corresponder a si mesmo; no modo regex o termo é passado como está escrito. A palavra inteira envolve o que você entrar em \b(?:…)\b, como um grupo de não captura, então uma alternância como cat|dog é limitada como um todo, em vez de vincular o limite a seu primeiro ramo. A compilação acontece dentro de um guarda que retorna um valor de erro de lançamento, e a própria mensagem do motor é transmitida sem prefixo duplo. A contagem é obtida pela correspondência antes da substituição e, em seguida, a substituição da string padrão é executada - é por isso que a substituição homenageia $1 a $9, $& e $$ em ambos os modos: apenas o lado da pesquisa é escapado.

Perguntas frequentes

Qual sabor de expressão regular ele usa?
Próprio de JavaScript, compilado pelo mecanismo do navegador que você está usando. Padrões escritos para outros tipos — classes PCRE, Python ou POSIX como [:alpha:] — falharão para compilar ou combinar algo diferente.
Os grupos de captura funcionam na substituição?
Sim, no modo regex. Encontre (\d{4})-(\d{2})-(\d{2}) e substitua por $3/$2/$1 para reescrever 2024-01-02 como 02/01/2024. Um número além dos grupos em seu padrão é deixado como literal texto.
O que acontece se minha expressão regular for inválida?
Você recebe a mensagem do mecanismo explicando o que estava errado, como um grupo não encerrado, e seu texto é deixado exatamente como estava. Nada é jogado, nada é limpo e você pode continuar editando o padrão.