-
Regex avec une négation
Bonjour à tous,
Bon, pas taper, je sais que je ne suis pas sur le bon forum mais je n'ai pas trouvé mieux et comme je code en C# je suis arrivé ici.
Mon problème concerne une expression régulière.
J'ai un fichier texte avec des lignes de ce genre:
Code:
Action: TOTO VEM_M_MAL : -10- Beheer Evenementen Ziekten [29667/123456789 Ben(2*)] (Modus beheer ziektes : Contractueel) 7/11/2013 29667 2282068 08/11/2013 14:38:07:063
Je dois trouver toutes les lignes contenant TOTO avec la date du 7/11/2013.
L'expression régulière est
Code:
.+:\tTOTO\t.+7/11/2013.+
Et ça fonctionne.
Oui, mais en fait je veux supprimer toutes les autres lignes, une sorte de:
Code:
!.+:\tTOTO\t.+7/11/2013.+
Je cherche, je cherche et je ne trouve pas de solution (avec notepad++).
J'ai bien essayé les assertions négatives mais je n'y arrive pas.
S'il existe un forum plus adapté que celui-ci, qu'un modérateur déplace mon sujet svp.
Je rappelle que je ne suis pas dans du code mais j'utilise notepad++.
Merci
-
Bonjour
Dans RECHERCHER --> REMPLACER :
REMPLACER PAR :laisser vide
Et dans RECHERCHE : tester l'expression suivante :
Code:
.+:\t(?!(TOTO\t.+\s7/11/2013.+)).+\r*\n*
avec donc une assertion négative.
J'ai aussi :
- Imposé un espace devant le 7 de la date sinon 07, 17, 27 seront acceptés.
- Inclus les "retour chariot" et "nouvelle ligne" qui seront - si ils existent - aussi supprimés avec la ligne à ne pas garder.
-
Bonjour,
Désolé, ça ne fonctionne pas, il me dit qu'il ne trouve pas le texte. :cry:
En fait, c'est l'assertion qui (semble) poser un problème à Notepad++.
Sinon laissez tomber, j'ai pris un autre chemin et j'ai mon résultat. :mrgreen:
Merci de l'aide. :ccool: