
🗑 Como remover linhas duplicadas no Notepad++: 3 métodos
Linhas duplicadas em registos, exportações CSV e ficheiros de configuração: uma dor de cabeça familiar para quem já analisou manualmente um dump de base de dados de 500 megabytes. Abre um ficheiro e metade das linhas estão repetidas. Apagá-las à mão é uma causa perdida quando se tem milhares de linhas.
O Notepad++ resolve isto em segundos. O editor oferece três métodos: desde uma funcionalidade integrada que requer dois cliques até expressões regulares para cenários complexos. Escolha o que se adequa à sua tarefa.
💡 Resumo rápido:
- Método 1, funcionalidade integrada: Editar → Operações com linhas → Remover linhas duplicadas. Dois cliques, funciona com a versão 7.6+, 64 bits.
- Método 2, expressão regular: remove duplicados sem ordenar, preservando a ordem das linhas. Altamente personalizável.
- Método 3, plugin TextFX: um clássico, mas apenas para a versão de 32 bits. Para 64 bits existe um fork chamado TextFX2.
Método 1: funcionalidade integrada do Notepad++
O método mais simples e rápido. Surgiu na versão 7.6 e funciona em todas as compilações modernas, incluindo a atual v8.9.6. Não requer plugins, tudo funciona de origem.
Abra um ficheiro no Notepad++, selecione todo o conteúdo (Ctrl + A) e vá a Editar → Operações com linhas → Remover linhas duplicadas. Pronto, todas as linhas repetidas são removidas, ficando apenas as únicas.
Existe também a opção Remover linhas duplicadas consecutivas, que remove apenas os duplicados que aparecem em sequência, sem tocar em linhas idênticas noutras partes do ficheiro. Útil para limpar registos onde as repetições se acumulam em blocos.
Nota: a funcionalidade remove TODOS os duplicados, mantendo apenas a primeira ocorrência de cada linha. Se o seu ficheiro contiver repetições com significado (por exemplo, parênteses de fecho idênticos em JSON ou XML), este método não é adequado. Nesse caso, veja o método 2 com regex.
Método 2: localizar e substituir com expressão regular
Uma expressão regular dá-lhe controlo total. Ao contrário da funcionalidade integrada, permite remover duplicados sem ordenação prévia: as linhas permanecem na sua ordem original enquanto as repetições desaparecem.
Abra o diálogo de pesquisa (Ctrl + H), mude para o separador Substituir e preencha os campos:
Campo | Valor |
|---|---|
Localizar |
|
Substituir por | (deixar vazio) |
Modo de pesquisa | Expressão regular |
. corresponde a nova linha | Desmarcar |
Clique em Substituir tudo. O Notepad++ percorrerá todo o ficheiro, encontrará as linhas que se repetem mais à frente e apagá-las-á. Como resultado, para cada conjunto de duplicados, apenas a última ocorrência permanece.
Como funciona: ^(.*?)$ captura uma linha para o primeiro grupo, \s+? salta os espaços em branco entre linhas e (?=.*^\1$) é uma antevisão positiva que verifica se esta mesma linha (\1) aparece mais tarde no ficheiro. Se aparecer, a ocorrência atual é eliminada.
A vantagem da regex é que pode adaptar o padrão. Por exemplo, adicione ^ no início da captura se precisar de uma correspondência exata desde o início da linha, ou substitua \s+? por \r?\n para ancorar estritamente às quebras de linha.
Método 3: plugin TextFX
Um método clássico que existe há anos. O TextFX era um plugin padrão nas versões mais antigas do Notepad++ de 32 bits. A situação mudou: o TextFX original é incompatível com a versão de 64 bits a partir da v8.4 e foi removido da distribuição padrão.
Se estiver a usar o Notepad++ de 32 bits, instale o plugin através de Plugins → Gestor de plugins → Mostrar gestor de plugins → Disponível → TextFX → Instalar. Após a instalação, aparece uma secção TextFX → TextFX Tools no menu.

Certifique-se de que a caixa de verificação Sort lines case sensitive está selecionada (ou case insensitive, conforme a sua escolha). Selecione o texto (Ctrl + A) e clique em Sort lines case sensitive. O plugin ordenará as linhas, colocando os duplicados lado a lado. Depois disso, Editar → Operações com linhas → Remover linhas duplicadas consecutivas removerá as repetições.
Para a versão de 64 bits, existe um fork moderno chamado TextFX2. Está disponível no GitHub (rainman74/NPPTextFX2) e é instalado manualmente: descarregue a DLL, coloque-a na pasta plugins\NPPTextFX2 dentro do diretório do Notepad++ e reinicie o editor. A funcionalidade é a mesma: ordenação, remoção de duplicados, conversão de maiúsculas/minúsculas.
Se a tarefa for pontual e não quiser instalar um plugin, o método 1 é mais do que suficiente.
⁉️🤔 Perguntas frequentes
Porque é que o Notepad++ não remove todos os duplicados?
Muito provavelmente, as linhas não são idênticas byte a byte. Verifique se há caracteres invisíveis: espaços no final, tabulações em vez de espaços, diferenças de maiúsculas/minúsculas. Ative Ver → Mostrar símbolo → Mostrar todos os caracteres para ver o que torna as linhas diferentes.
Como removo duplicados SEM sensibilidade a maiúsculas/minúsculas?
A funcionalidade integrada Remover linhas duplicadas é sensível a maiúsculas/minúsculas: "WordPress" e "wordpress" são linhas diferentes. Para remover duplicados sem sensibilidade a maiúsculas/minúsculas, converta primeiro o texto para um formato uniforme através de Editar → Converter maiúsculas/minúsculas → Minúsculas (ou Maiúsculas) e depois execute Remover linhas duplicadas. Em alternativa, use o método 2 com a flag de regex
(?i)no início do padrão.
Posso remover duplicados em vários ficheiros de uma só vez?
O Notepad++ não suporta pesquisa e substituição com regex em vários ficheiros através da sua interface padrão. No entanto, pode usar Localizar em ficheiros (Ctrl + Shift + F) para encontrar linhas por regex em todos os ficheiros de uma pasta. Para substituição em lote em vários ficheiros, um script em Python ou PowerShell é mais conveniente: leia o ficheiro, aplique a regex, sobrescreva. Em alternativa, use o plugin Python Script para o Notepad++ com um script personalizado.
O que é mais rápido num ficheiro grande, a funcionalidade integrada ou a regex?
A funcionalidade integrada Remover linhas duplicadas é notoriamente mais rápida em ficheiros com mais de 50 MB, uma vez que é código C++ nativo e não um motor de expressões regulares. O método regex começa a ficar significativamente mais lento em centenas de milhares de linhas devido às verificações de antevisão. Para comparação: num ficheiro CSV com 200.000 linhas, a funcionalidade integrada conclui em 2 a 3 segundos, enquanto a regex demora 15 a 20.
Removi duplicados; como desfaço se correu mal?
Ctrl + Z desfaz a última operação. Se fechou o ficheiro sem guardar, simplesmente não guarde as alterações ao sair. Em qualquer caso, antes de fazer edições em massa, copie o ficheiro original para uma pasta adjacente: demora um segundo, poupa horas.
Qual o método a escolher para a sua tarefa
Se precisa de limpar rapidamente registos ou CSV de repetições, use a funcionalidade integrada (método 1). Dois cliques, resultado instantâneo, sem plugins. Esta é a escolha padrão para a grande maioria dos cenários. O resultado é visível de imediato, sem passos adicionais.
A regex (método 2) é para quando a ordem original das linhas é importante ou precisa de ajustes finos: remover duplicados apenas num fragmento selecionado, ignorar maiúsculas/minúsculas, lidar com repetições aninhadas. Mais poderosa, mas requer compreensão da sintaxe.
O TextFX (método 3) é apenas se estiver na versão de 32 bits e estiver habituado a este fluxo de trabalho. Para 64 bits existe o TextFX2, mas com a funcionalidade integrada agora disponível, o plugin tornou-se praticamente obsoleto.
Experimente a funcionalidade integrada agora mesmo em qualquer ficheiro de texto com repetições. Demorará 5 segundos.



