grep et expression régulière

Le
fabrice régnier
salut la liste,

L'expression régulière que je passe à grep ne lui plait pas. Mais je ne
vois pas mon erreur. Pour moi, il devrait me sortir
"1234567890;01;02;12/06/2010;"

C'est à dire que je recherche les lignes qui commencent par un numérique
avec de 4 à 12 chiffres ensuite et qui comporte un ";" à la suite.

<code>
FR-PORT:/tmp# cat toto
1234567890;01;02;12/06/2010;
zzzz011234567890;01;02;12/06/2010;klklk

FR-PORT:/tmp# grep "^[0-9]{4,12};" toto

FR-PORT:/tmp#
</code>

Si quelqu'un voit mon erreur ;)

merci et a+

f.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Korrignu
Le #20972001
fabrice régnier a écrit :
salut la liste,

L'expression régulière que je passe à grep ne lui plait pas. Mais je ne
vois pas mon erreur. Pour moi, il devrait me sortir
"1234567890;01;02;12/06/2010;"

C'est à dire que je recherche les lignes qui commencent par un numérique
avec de 4 à 12 chiffres ensuite et qui comporte un ";" à la suite.

<code>
FR-PORT:/tmp# cat toto
1234567890;01;02;12/06/2010;
zzzz011234567890;01;02;12/06/2010;klklk

FR-PORT:/tmp# grep "^[0-9]{4,12};" toto

FR-PORT:/tmp#
</code>

Si quelqu'un voit mon erreur ;)

merci et a+

f.



avec egrep à la place de grep ca marche tres bien, enfin disons qu'il
sort la premiere ligne de toto et pas la sconde j'ai pas experimente plus...
il me semble que grep est parfois chatouilleux sur les regexp...

bonne soiree

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Benoit Mauduit
Le #20972201
Le Thu, 14 Jan 2010 17:12:38 +0100,
fabrice régnier
salut la liste,

L'expression régulière que je passe à grep ne lui plait pa s. Mais je
ne vois pas mon erreur. Pour moi, il devrait me sortir
"1234567890;01;02;12/06/2010;"

C'est à dire que je recherche les lignes qui commencent par un
numérique avec de 4 à 12 chiffres ensuite et qui comporte un "; " à la
suite.

<code>
FR-PORT:/tmp# cat toto
1234567890;01;02;12/06/2010;
zzzz011234567890;01;02;12/06/2010;klklk

FR-PORT:/tmp# grep "^[0-9]{4,12};" toto

FR-PORT:/tmp#
</code>

Si quelqu'un voit mon erreur ;)

merci et a+

f.





Salut,

Utilise grep -E.

(extrait du man )
-E, --extended-regexp
Interpréter le MOTIF comme une expression rationnelle
étendue (...)

A+

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Yves Rutschle
Le #20972191
On Thu, Jan 14, 2010 at 05:12:38PM +0100, fabrice régnier wrote:
FR-PORT:/tmp# grep "^[0-9]{4,12};" toto



Problème de dialecte:

$ grep "^[0-9]{4,12};" toto
1234567890;01;02;12/06/2010;

Y.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
steve
Le #20976671
Salut,

Pour ce genre de questions, il existe une liste où tu trouveras des gens
très compétents :

@plouff,
s.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
moi-meme
Le #20976891
Le Thu, 14 Jan 2010 18:30:03 +0100, Yves Rutschle a écrit :

On Thu, Jan 14, 2010 at 05:12:38PM +0100, fabrice régnier wrote:
FR-PORT:/tmp# grep "^[0-9]{4,12};" toto



Problème de dialecte:

$ grep "^[0-9]{4,12};" toto
1234567890;01;02;12/06/2010;

Y.



si je comprends bien :
- il faut " l'expression
- il faut en plus "" (echapper) les { et }

D'après l'autre fil il vaut mieux faire un
alias grep="egrep" dans bashrc ?

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Yves Rutschle
Le #20982551
On Fri, Jan 15, 2010 at 08:27:53AM +0000, moi-meme wrote:
D'après l'autre fil il vaut mieux faire un
alias grep="egrep" dans bashrc ?



Bof, amha c'est une mauvaise idée de re-définir des
commandes, c'est un coup à casser des scripts par exemples.

Y.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Publicité
Poster une réponse
Anonyme