Grep et expression réguliere
Résolu
pcsystemd
Messages postés
734
Statut
Membre
-
pcsystemd Messages postés 734 Statut Membre -
pcsystemd Messages postés 734 Statut Membre -
Bonjour,
voila je souhaite savoir a quoi correspond le caractére # dans l'expression suivante :
grep -i "^[^#]*DEBUG" foo.txt
Merci
--
L'accès au savoir est la première liberté que chaque homme devrait avoir.
voila je souhaite savoir a quoi correspond le caractére # dans l'expression suivante :
grep -i "^[^#]*DEBUG" foo.txt
Merci
--
L'accès au savoir est la première liberté que chaque homme devrait avoir.
Configuration: Linux Mozilla 1.9.0.5
7 réponses
-
ce grep affiche les lignes qui contiennet DEBUG et ne sont pas des lignes de commentaires
-
# n'est pas une expression reguliere, d'aprés ce que tu as ecris, tu veux afficher tous ce qui ne commence pas par #.
enfin je crois -
Bonjour,
Le caractère # correspond à un caractère #
et vous voulez afficher les lignes commençant par DEBUG en faisant abstraction des éventuels caractères # qui pourraient précéder le DEBUG
Manu -
Rebonjour
Il fallait lire
vous voulez afficher les lignes contenant DEBUG non précédé d'un caractère #
Manu -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
afficher les lignes qui contiennent DEBUG et qui ne débutent pas par #
-
Salut,
vous voulez afficher les lignes contenant DEBUG non précédé d'un caractère #
Le but d'une regex c'est de trouver une correspondance et pas de trouver une non correspondance.
[^] - c'est une classe complementée qui veut dire de trouver tout caractère sauf les caractères existants dans la classe et pas de ne pas trouver les caractères existants dans la classe.
Même si ça semble être la même chose ce n'est pas le cas.
Donc on dirait plutôt
- vous voulez afficher les lignes contenant DEBUG et précédé de tout caractère sauf le #
-