8 votes

notepad++ regexp pour trouver toutes les lignes qui contiennent une chaîne spécifique

Je cherche une regexp notepad++ qui contient une chaîne spécifique. Je veux ensuite supprimer cette ligne entière.

19voto

Hellonearthis Points 447

Eh bien, je ne pense pas que vous puissiez le faire avec un seul recherche-remplacement.

Je ferais ça.

Ouvrez la recherche-remplacement, choisissez le mode regex et recherchez :

^.*(string).*$ et que le remplaçant soit \1 (c'est la chaîne qui marque les lignes que vous ne voulez pas). Cela laissera des lignes avec seulement la chaîne indésirable et rien d'autre.

Passez ensuite à la recherche étendue et recherchez \r\nstring et laissez le remplacement en blanc. Cela supprimera les lignes contenant uniquement la chaîne indésirable.

Il y a probablement un moyen plus propre de le faire, mais celui-ci fonctionne.

Edit : et oh, vérifiez également la première ligne du document pour trouver une ligne contenant uniquement la chaîne indésirable, car cela les manquera. Comme dit, il y a probablement un meilleur moyen ;)

2voto

Vishnu Haridas Points 121

Assurez-vous que vous décochez l'option .matches newline .

enter image description here

2voto

Jason Whiting Points 21

Je voulais donc supprimer une ligne entière si elle contenait l'un de ces trois mots : LAB, RAD, TRAN. J'ai donc effectué un "rechercher et remplacer" dans Notepad++ en faisant correspondre la ligne entière si elle contient l'un de ces mots. De plus, je fais correspondre la nouvelle ligne ( \n ) et le retour chariot ( \r ) et a remplacé l'ensemble par des caractères vides (c'est-à-dire rien). De cette façon, lorsqu'il effectue le remplacement, il supprime tout le texte, y compris les caractères cachés qui vous donnent une nouvelle ligne. Cela permet de ne pas laisser une ligne vide après le remplacement.

REGEX :

.*((LAB)|(RAD)|(TRAN)).*\r\n

1voto

Tom Points 11

Pour trouver plusieurs chaînes de caractères sur la même ligne, vous pouvez utiliser ^.\*(string).\*(string).*$

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X