125 votes

Comment extraire du texte d'une chaîne de caractères en utilisant sed ?

Mon exemple de chaîne est le suivant :

This is 02G05 a test string 20-Jul-2012

Maintenant, à partir de la chaîne ci-dessus, je veux extraire 02G05 . Pour cela j'ai essayé la regex suivante avec sed

$ echo "This is 02G05 a test string 20-Jul-2012" | sed -n '/\d+G\d+/p'

Mais la commande ci-dessus n'imprime rien et la raison en est, je crois, qu'elle n'est pas capable de faire correspondre quoi que ce soit au modèle que j'ai fourni à sed.

Ma question est donc de savoir ce que je fais de travers et comment y remédier.

Lorsque j'essaie la chaîne et le motif ci-dessus avec python, j'obtiens le résultat suivant

>>> re.findall(r'\d+G\d+',st)
['02G05']
>>>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X