Vous pouvez utiliser une expression régulière pour supprimer des mots en double consécutifs dans une ligne, mais je ne pense pas qu'il soit possible de supprimer des mots en double qui ne sont pas consécutifs (par exemple dangerous, hazardous, dangerous
).
Utilisez cette expression régulière dans la fenêtre de remplacement dans Notepad ++, et n'oubliez pas de sélectionner "Expression régulière" comme option de mode de recherche ci-dessous:
Ce regex va supprimer tous les mots dupliqués consécutifs - que ce soit 2 mots dupliqués ou 10 mots dupliqués consécutivement: \b(\w+)(?:,\s+\1\b)+
.
La même expression régulière sans virgule serait: \b(\w+)(?:\s+\1\b)+
(pourrait être utile pour d'autres utilisateurs).
Si vous voulez un regex spécifiquement pour seulement deux mots en double (double), utilisez cette expression rationnelle: (\b\w+\b)\W+\1
.
Placez ce regex dans le remplacer par boîte pour garder une occurrence du mot (sinon tous les mots répétés seront supprimés): ${1}
.
Ces expressions régulières corrigeront une situation comme celle que vous avez décrite dans votre question à titre d'exemple. Le premier regex fonctionnera pour chaque nombre de mots dupliqués (par exemple dangerous, dangerous, dangerous, dangerous, hazardous
), tandis que la deuxième version ne fonctionnera que pour deux mots dupliqués (par exemple dangerous, dangerous, hazardous
).
Note: L'expression régulière ne s'appliquera au format décrit dans la question, ce qui signifie que des formats comme two words, two words, anotherword
, two-words, two-words, anotherword
, three words expression, three words expression, anotherword
ne sera pas modifiée parce que l'expression rationnelle ne sera pas applicable à eux.
dangerous,hazardous,dangerous,perilous
? En d'autres termes, les mots en double sont-ils toujours côte à côte?