Question Suppression des lignes en double dans le bloc-notes ++


Est-il possible de supprimer des lignes dupliquées dans Notepad ++, ne laissant qu'une seule occurrence d'une ligne?


504
2017-10-18 10:42


origine


Réponses:


Notepad ++ peut le faire, à condition que vous vouliez trier par ligne, et supprimer les lignes en double en même temps. 

Vous aurez besoin du plugin TextFX. Cela a été inclus dans les anciennes versions de Notepad ++, mais si vous avez une version plus récente, vous pouvez l'ajouter à partir du menu en allant à Plugins -> Plugin Manager -> Show Plugin Manager -> Available tab -> TextFX -> Install. Dans certains cas, il peut également être appelé TextFX Charactersmais c'est la même chose

Les cases à cocher et les boutons requis apparaissent maintenant dans le menu sous: TextFX -> TextFX Tools.

Assurez-vous que "trier les sorties uniquement uniques ..." est coché. Ensuite, sélectionnez un bloc de texte (Ctrl+UNE pour sélectionner le document entier). Enfin, cliquez sur "trier les lignes sensibles à la casse" ou "trier les lignes sans tenir compte de la casse".

menu layout in n++


707
2017-10-18 10:46



Depuis Notepad ++ Version 6 vous pouvez utiliser cette regex dans le dialogue de recherche et de remplacement:

^(.*?)$\s+?^(?=.*^\1$)

et remplacer par rien. Cela laisse de toutes les lignes dupliquées la dernière occurrence dans le fichier.

Aucun tri n'est nécessaire pour cela et les lignes dupliquées peuvent être n'importe où dans le fichier!

Vous devez cocher les options "Regular expression" et ". Matches newline":

Notepad++ Replace dialogue

  • ^ correspond au début de la ligne.

  • (.*?) correspond à tous les caractères 0 fois ou plus, mais aussi peu que possible (il correspond exactement à la ligne, cela est nécessaire en raison de l'option ". matches newline"). La rangée appariée est stockée, en raison des supports autour et accessible en utilisant \1 

  • $ correspond à la fin de la ligne.

  • \s+?^ cette partie correspond à tous les caractères d'espacement (newlines!) jusqu'au début de la ligne suivante ==> Ceci supprime les nouvelles lignes après la ligne matchd, de sorte qu'aucune ligne vide ne soit présente après le remplacement.

  • (?=.*^\1$) c'est une affirmation positive de lookahead. C'est la partie importante dans cette regex, une ligne est seulement appariée (et supprimée), quand il y a exactement la même ligne qui suit ailleurs dans le fichier.


478
2018-04-30 06:27



si les lignes sont immédiatement après l'autre, vous pouvez utiliser un regex remplacer

Motif de recherche: ^(.*\r?\n)(\1)+

Remplacer par: \1


71
2017-10-18 10:53



Si vous ne vous souciez pas de l'ordre des lignes (ce que je ne pense pas que vous faites), vous pouvez utiliser une boîte Linux / FreeBSD / MacOSX / Cygwin et faire:

$ cat yourfile | sort | uniq > yourfile_nodups

Ensuite, ouvrez à nouveau le fichier dans Notepad ++.


23
2017-10-18 10:46



Bloc-notes ++ 

-> Remplacer la fenêtre

Assurez-vous que dans le mode de recherche

vous avez sélectionné le bouton radio Expression régulière

Trouver quoi:

^ (. *) (\ r? \ n \ 1) + $

Remplacer par:

1 $

avant:

et on y pense

et on y pense

une seule ligne

est-ce possible de

est-ce possible de

après:

et on y pense

une seule ligne

est-ce possible de


21
2018-05-20 22:21



Les dernières versions de Notepad ++ n'incluent apparemment pas le plugin TextFX. Afin d'utiliser le plugin pour trier / éliminer les doublons, le plugin doit être soit téléchargé et installé (plus impliqué) ou ajouté en utilisant le gestionnaire de plugin.

A) moyen facile (comme décrit ici).

Plugins -> Plugin Manager -> Afficher le gestionnaire de plugins -> onglet Disponible -> Caractères TextFX -> Installer

B) Plus de manière impliquée, si une autre version est nécessaire ou la manière facile ne fonctionne pas.

  1. Téléchargez le plugin depuis SourceForge:

    http://downloads.sourceforge.net/project/npp-plugins/TextFX/TextFX%20v0.26/TextFX.v0.26.unicode.bin.zip

  2. Ouvrez le fichier zip et extrayez NppTextFX.dll

  3. Endroit NppTextFX.dll dans le répertoire des plug-ins Notepad ++, tels que:
      C: \ Program Files \ Notepad ++ \ plugins

  4. Démarrer Notepad ++, et TextFX sera l'un des éléments du menu fichier (comme vu dans la réponse # 1 ci-dessus par Colin Pickard)

Après avoir installé le plugin TextFX, suivez les instructions de la réponse n ° 1 pour trier et supprimer les doublons.

En outre, pensez à configurer un raccourci clavier en utilisant Paramètres> Mapper de découpage Si vous utilisez cette commande fréquemment ou si vous souhaitez répliquer un raccourci clavier, tel que F9 dans TextPad pour le tri.


14
2017-11-13 16:33



Aucun n'a travaillé pour moi.

Une solution est:

Remplacer

^(.*)\s+(\r?\n\1\s+)+$

avec

\1

La source: http://sortedinf.com/?q=remove-duplicate-rows-in-notepad-plus-plus


4
2018-03-24 00:13



Le gestionnaire de plugin est actuellement indisponible (ne vient pas avec la distribution) pour Notepad ++, vous devez l'installer manuellement ( https://github.com/bruderstein/nppPluginManager/releases ) et même si vous le faites, beaucoup de plugins ne sont plus disponibles (pas de plug-in TextFX).

Peut-être existe-t-il un autre plugin contenant les fonctionnalités requises. Autre que cela, la seule façon de le faire dans NotePad ++ est d'utiliser un peu spécial regex pour faire correspondre et remplacer (CTRL + F -> Remplacer l'onglet).

Bien qu'il existe de nombreuses fonctionnalités disponibles via modifier élément de menu (rognage, suppression des lignes vides, tri, conversion EOL), il n'y a pas d'opération "unique" disponible.

Je vous avez Windows 10 alors vous pouvez activer Bash (tapez simplement Ubuntu dans Microsoft Store et suivez les instructions dans la description pour l'installer) et utilisez cat your_file.txt | sort | uniq > your_file_edited.txt. Bien sûr, vous devez être dans le même répertoire de travail que "your_file.txt" ou vous y référer via son chemin.


1
2018-02-23 14:42



Rechercher l'expression régulière: \b(\w+)\b([\w\W]*)\b\1\b

Remplacez-le par: $1$2

Hit Replace Button Jusqu'à ce qu'il n'y ait plus de correspondances pour l'expression régulière dans votre fichier.


1
2018-05-22 13:05



Vous pouvez avoir besoin d'un plugin pour le faire. Vous pouvez essayer la ligne de commande cc.ddl(supprimer les lignes en double) de ConyEdit. C'est un plugin éditeur croisé pour les éditeurs de texte, y compris Notepad ++.

Avec ConyEdit fonctionnant en arrière-plan, suivez les étapes ci-dessous: 

  1. entrez la ligne de commande cc.ddl à la fin du texte.
  2. Copiez le texte et la ligne de commande.
  3. coller, alors vous verrez ce que vous voulez.

Exemple
enter image description here


0
2017-07-07 14:53