Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/12/2011, 10h11   #1
Membre du Club
 
Inscription : septembre 2003
Messages : 183
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 183
Points : 46
Points : 46
Par défaut extraire les chiffres d'une chaine en bash

Bonjour,

je me rend fou pour extraire les chiffres d'une chaine de caractère en bash.
La chaine commence par "[Téléphone]" puis il y a du texte, puis des chiffres, puis du texte encore:
Code :
[Téléphone]   bla bla bla        12.34.56        [Envoyer ces renseignements par mail...bla] bla bla
J'essaie d'extraire le numéro en plein milieu qui est composé de 3 séquence de 2 chiffres séparées par un .

Code :
1
2
3
4
if [[ "$line" =~ '^.*.Téléphone.*.([0-9]{2}\.){3}.*.$' ]]
then
      echo "---> ${BASH_REMATCH[1]}"
fi
et ça ne fonctionne pas. Pouvez-vous m'éclairer svp ?
zerros est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2011, 18h06   #2
Expert Confirmé Sénior
 
Avatar de N_BaH
 
Inscription : février 2008
Messages : 2 072
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 2 072
Points : 4 155
Points : 4 155
Bonjour,

ta regex n'est pas correcte (tu t'en doutais, non ? )
Code :
1
2
3
$ var="[Téléphone]   bla bla bla        12.34.56        [Envoyer ces renseignements par mail...bla] bla bla"
$ [[ $var =~ ^\[Téléphone.*(([0-9]{2}\.){2}[0-9]{2}).*$ ]] && echo "${BASH_REMATCH[1]}"
12.34.56
deux chiffres et un point deux fois, et, deux chiffres une fois.
N_BaH est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 13/12/2011, 21h40   #3
Membre du Club
 
Inscription : septembre 2003
Messages : 183
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 183
Points : 46
Points : 46
Yessss, merciiii
zerros est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h19.


 
 
 
 
Partenaires

Hébergement Web