Dans Textpad ou Notepad ++, existe-t-il une option permettant d’exporter toutes les correspondances pour une recherche d’expression régulière, sous forme de liste unique?
Dans un gros fichier texte, je cherche des balises (mots entre%%), en utilisant l'expression régulière %\< and \>%
, et je veux toutes les correspondances sous forme de liste unique, afin que je puisse supprimer les doublons à l'aide d'Excel et obtenir une liste de balises uniques.
Vous pouvez y parvenir en utilisant les références arrières et les fonctionnalités de recherche et de marquage du bloc-notes ++.
Recherchez les correspondances à l’aide de regex (par exemple, %(.*?)%
) et remplacez-les par \n%\1%\n
. Après cela, nous aurons notre mot cible dans des lignes séparées (c’est-à-dire qu’aucune ligne n’aura plus d’un mot correspondant)
Utilisez la fonctionnalité Rechercher -> Rechercher -> Marquer pour marquer chaque ligne avec regex %(.*?)%
et n'oubliez pas de cocher ' ligne de signet ' avant de marquer le texte.
Est-ce que cela dans Notepad ++ est obligatoire? Êtes-vous sous Windows ou sous une forme quelconque d'Unix? Si vous êtes sous Windows, vous pouvez le faire (en partie) à partir de l'invite de commande:
findstr/r "% [a-z]. * [a-z]%% [a-z]%" votre_fichier > nouveau fichier
findstr
est vaguement inspiré par grep
, donc ceci nouveau fichier contiendra toutes les lignes correspondant à vos critères de recherche; vous pouvez ensuite utiliser Notepad ++ pour éliminer le texte indésirable (à gauche du premier% et à droite du second).
Et bien sûr, si vous utilisez Unix, vous pouvez effectuer la tâche équivalente avec sed
.
Il existe un plug-in Notepad ++ qui peut copier une expression regex correspondante dans un nouveau fichier dans un nouvel onglet. RegexExtract
N'ayant trouvé aucun plug-in pour Notepad ++ pouvant extraire du texte du document actuel ou de tous les fichiers d'un emplacement comportant des paramètres supplémentaires (comme la conversion de casse), j'ai décidé d'essayer de le créer moi-même. (...) L'interface du plugin est assez simple (...). (...) Les champs "Rechercher", "Remplacer" et "Masque" utilisent la syntaxe regex C++ 11. Extraire des fichiers ne fonctionne pour le moment que pour ceux de UTF8.
Éditer Entrée de dialogue adaptée à la question
Dans l'image, vous pouvez voir comment remplir la boîte de dialogue. Je suppose qu'un mot ne contient pas d'espaces, etc., mais uniquement des caractères auxquels\w correspond. Notamment:
Dans TextPad, vous affichez la boîte Find
comme d'habitude, puis utilisez le bouton Mark All
.
A partir de là, utilisez la fonction Copy Bookmarked Lines
. (Menu Edition> Copier Autre> Lignes marquées d'un signet.)