Localizar e substituir texto

Quando um cliente renomeia o produto no meio de um rascunho, ou você precisa trocar cada marcador {FIRST_NAME} em um modelo de e-mail, abrir um processador de texto para trezentas substituições é exagero. Cole o texto, defina o par localizar/substituir, ative a diferenciação de maiúsculas ou o modo de expressão regular, e esta ferramenta reescreve cada ocorrência e mostra um contador de quantas foram trocadas.

Como localizar e substituir texto

  1. 1

    Cole o texto

    Um artigo, um modelo, um arquivo de log ou qualquer cadeia simples.

  2. 2

    Digite o padrão a localizar

    Uma palavra ou frase literal, ou uma expressão regular quando o modo regex está ativado.

  3. 3

    Digite a substituição

    Deixe em branco para apagar as correspondências; no modo regex, reutilize grupos de captura como $1, $2.

  4. 4

    Escolha as opções

    Ative a diferenciação de maiúsculas e o modo regex para buscas avançadas.

  5. 5

    Substitua e copie

    Veja o número de correspondências e copie o texto reescrito com um clique.

Guia rápido de opções

Opção O que muda
Diferenciar maiúsculas Apple corresponde só a Apple, não a apple nem APPLE (vale para buscas simples, sem regex)
Expressão regular O campo de busca é lido como um padrão PCRE, entre delimitadores como /padrão/
Sinalizadores em linha Adicione sinalizadores após o delimitador de fechamento: i ignora maiúsculas, s faz . abranger quebras de linha, m faz ^ e $ casarem em cada linha
Substituir tudo Toda correspondência é substituída; não há modo «apenas a primeira»

Padrões regex úteis

  • Remover tags HTML: /<[^>]+>/
  • Reduzir vários espaços: / {2,}/ para um único espaço
  • Remover URLs: /https?:\/\/\S+/
  • Mascarar telefones: /\d{3}-\d{3}-\d{4}/ para ***-***-****
  • Aspa tipográfica para aspa reta: /[‘’]/ para '
  • Capturar a primeira palavra de cada linha: /^(\w+).*$/m para $1

Grupos de captura poupam tempo

No modo regex, os parênteses capturam a parte correspondente e $1, $2 a reutilizam na substituição. Para trocar nome e sobrenome em uma coluna CSV:

  • Localizar: /(\w+),\s*(\w+)/
  • Substituir: $2 $1

Armadilhas comuns

  • Delimitadores ausentes. No modo regex o padrão precisa estar entre delimitadores, por exemplo /foo/. Sem delimitadores a busca falha e o texto volta sem alterações.
  • Correspondências gulosas. /<.+>/ engole tudo do primeiro < até o último > de uma linha. Use /<.+?>/ para correspondência preguiçosa.
  • Caracteres especiais. ., +, *, ?, (, ), [, ], \, |, ^, $ são operadores regex. Coloque uma barra invertida antes quando quiser o caractere literal.
  • A opção de maiúsculas no modo regex. A caixa de diferenciar maiúsculas vale para buscas simples; no modo regex, controle as maiúsculas com o sinalizador i.
  • Retrorreferências na substituição. Reutilize um grupo com $1 ou ${1}. Para inserir um $ literal antes de um dígito, escape-o como \$.
  • Quebras de linha. O \r\n do Windows e o \n do Unix parecem idênticos na tela; uma divergência quebra os padrões de fim de linha.

Perguntas frequentes

PCRE (expressões regulares compatíveis com Perl), o motor que PHP, Perl e grep -P compartilham. Coloque seu padrão entre delimitadores como /padrão/ e adicione sinalizadores como i ou s após o delimitador de fechamento. Alguns atalhos exclusivos de JavaScript ou Python podem não funcionar igual.

Milhares sem problema. Entradas muito grandes são limitadas pelo tamanho da requisição e pelo tempo de processamento; para arquivos enormes use uma ferramenta de linha de comando como sed ou um editor com substituição por streaming.

Dentro da ferramenta, não. Mantenha o texto original em outra aba, ou cole primeiro em um editor com controle de versão para poder reverter.

A localização e a substituição rodam no nosso servidor: seu texto é enviado para realizar a troca e não é armazenado após a resposta. Para material confidencial, prefira um editor offline.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas