Votre question

[Résolu] Problème de RegExp avec grep

Tags :
  • Programmation
Dernière réponse : dans Programmation
16 Juin 2008 21:25:48

Yop,
Cette commande : grep [^e] liste.txt
est sensé renvoyer toutes les lignes de liste.txt ne contenant pas la lettre "e", non ? Eh bien ça ne marche pas :/  Ca me renvoie tout, y compris ce qui contient des "e"...

Merci d'avance, a+

Autres pages sur : resolu probleme regexp grep

a b L Programmation
16 Juin 2008 23:34:35

Le problème de ton expression c'est que ça fait .*[^e].*
Donc, en fait tu peux trouver une correspondance si tu places le NON(e) sur un caractère qui n'est pas un e. Du coup, ça ne va éliminer que les liste de e ("eeeeeeeeeeee" par exemple), mais dès lors que tu auras un caractère différent, l'expression régulière fonctionnera (ex "eeeaeeee" => .* sur eee, [^e] sur a, et .* sur eeee)

Bref, pour faire un truc qui va bien, il fait inverser le résultat de l'expression régulière inverse:
grep -v e liste.txt

17 Juin 2008 00:08:30

Merci, ça fonctionne ;) 

A+
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS