WikiPlus

Como usar regex no VS Code e Sublime Text — guia completo

Editores de código modernos como VS Code, Sublime Text, Atom e Notepad++ têm suporte embutido para busca e substituição com expressões regulares, um dos recursos mais subutilizados por desenvolvedores. Saber usar regex diretamente no editor elimina a necessidade de scripts externos para muitas tarefas de refatoração e limpeza de código. Neste guia, explicamos como ativar e usar regex em cada editor popular, com exemplos práticos de tarefas comuns que se tornam triviais com esse recurso.

Regex no VS Code: busca, substituição e multiarquivo

No Visual Studio Code, ative a busca com regex clicando no ícone '.*' na barra de busca ou pressionando Alt+R. Para abrir a busca em arquivo único: Ctrl+H (substituição). Para busca em todos os arquivos do projeto: Ctrl+Shift+H. Com regex ativada, você pode usar toda a sintaxe de regex JavaScript. Exemplos práticos: para encontrar todas as funções JavaScript sem async: ^function\s+\w+\(. Para substituir console.log por // console.log em todo o projeto: (console\.log\([^)]*\)) substituído por // $1. Para reformatar imports de caminho relativo para alias: from '\.\./' substituído por from '@/'. O VS Code exibe uma prévia das substituições antes de aplicar, o que é essencial para operações em múltiplos arquivos. Use o Testador de Regex da WikiPlus para desenvolver o padrão e depois transfira para o VS Code.

Regex no Sublime Text e Notepad++

No Sublime Text, ative regex na barra de busca e substituição (Ctrl+H) clicando no ícone de ponto e asterisco. O Sublime usa a engine Boost.Regex (compatível com PCRE) que suporta recursos avançados como lookbehind de comprimento variável, não disponível em JavaScript. Uma vantagem do Sublime é a seleção múltipla: após uma busca com regex, você pode selecionar todas as correspondências (Alt+Enter) e editá-las simultaneamente. No Notepad++, habilite 'Regular expression' no menu Find/Replace (Ctrl+H). Notepad++ usa a biblioteca Boost.Regex e usa \1, \2 (barra invertida, não $) para referenciar grupos na substituição. Exemplo no Notepad++: para converter tags HTML maiúsculas para minúsculas, substitua <([A-Z]+) por <\L\1 onde \L converte para lowercase.

Casos de uso reais: refatoração de código com regex

Regex em editores brilha em refatorações que seguem padrões. Exemplos concretos: 1) Converter callbacks para async/await — encontre funções com callback(err, result) e refatore. 2) Adicionar tipos TypeScript a funções JavaScript — encontre function\s+(\w+)\(([^)]+)\) e adicione tipos. 3) Trocar API deprecada — substituir todas as chamadas de uma função por outra com argumentos reordenados. 4) Normalizar strings de i18n — extrair strings hardcoded para arquivos de tradução. 5) Reformatar comentários — converter comentários de bloco para comentários JSDoc. Para cada uma dessas tarefas, desenvolva e valide o padrão no Testador de Regex da WikiPlus com código de exemplo, depois aplique no editor com confiança. Sempre faça backup ou use controle de versão (git) antes de substituições em massa.

Dicas avançadas para regex em editores

Para usar regex em editores com máxima eficácia: 1) Use o modo case-insensitive (\i ou flag i) para encontrar símbolos independente de capitalização inconsistente. 2) Aproveite o multiline para operações que cruzam linhas — buscar blocos de código específicos. 3) Teste com a opção 'Find All' antes de substituir para ver quantas correspondências existem. 4) Para substituições complexas com lógica condicional, regex pura pode ser insuficiente — use scripts de automação com Node.js ou Python que usam regex como componente. 5) Combine regex com macros no editor para sequências de operações repetitivas. 6) Mantenha uma biblioteca pessoal de regex úteis em um arquivo de notas, com descrição do propósito e exemplos de uso. O Testador de Regex da WikiPlus, com processamento local e sem envio de código para servidores, é ideal para refinar padrões com código real do seu projeto.

Perguntas frequentes

O VS Code usa a mesma sintaxe de regex do JavaScript?
Sim, o VS Code usa a engine de regex do Node.js/JavaScript (V8), então a sintaxe é idêntica ao JavaScript. Os grupos de captura são referenciados como $1, $2 na substituição. Diferente do Notepad++ que usa \1, \2 (com barra invertida).
Como buscar texto que inclui quebras de linha no VS Code?
No VS Code, use \n para representar quebra de linha na busca com regex. Para capturar qualquer conteúdo entre duas strings incluindo quebras de linha, use (.|\n)* ou ativar a opção que faz o ponto corresponder a newlines. Certifique-se de que o arquivo usa quebras de linha do tipo Unix (LF) ou ajuste o padrão para \r\n se for Windows.
Posso usar regex para buscar em arquivos binários no editor?
Editores de código tratam arquivos como texto. Para busca em arquivos binários com regex, use ferramentas de linha de comando como grep com flag --binary-files=text, ou ferramentas especializadas em análise binária. O Testador de Regex da WikiPlus é voltado para texto e não processa conteúdo binário.