[Notepad++] Enchaîner les “rechercher / remplacer”
Parfois on souhaite modifier une liste de mots par une autre liste de mots. Soit on les fait 1 par 1, soit …
On programme un petit script (en Python) qui permet d’appliquer une succession de “rechercher / remplacer” en se basant sur un fichier texte.
Installer le plugin Python Script
Tout d’abord, il faut installer le plugin “NPP Python Script” dans Notepad++.
Ajouter un script personnel
Dans Notepad++, dans le menu “Plugins –> Python Script” on sélectionne “New Script”.
Il va demander un nom de script, on met par exemple multi_replace.py
.
Le fichier s’ouvre dans l’éditeur. On colle le code suivant :
with open('C:/temp/substitutions.txt') as f:
for l in f:
s = l.replace('\n', '').split('\t')
if s[0]:
editor.rereplace(s[0], s[1])
La liste des remplacements à effectuer se trouve dans le fichier C:/temp/substitutions.txt
, chaque chaîne à chercher / remplacer est sur 1 ligne, la séparation entre la chaîne à chercher et la chaîne à remplacer est faite par une tabulation.
Explications du script :
- On ouvre le fichier “
substitutions.txt
“. - Pour chaque ligne, on récupère la chaîne à chercher s[0] et la chaîne de remplacement s[1].
- On effectue un remplacement (expressions rationnelles).
- Et on boucle.
Attention, comme ce sont des remplacements d’expressions rationnelles, il faut bien faire attention à ne pas utiliser des caractère spéciaux.
Par exemple, si la chaîne à chercher contient un +
, il faudra bien penser à utiliser \+
.