Le Bash, les expressions régulières et leurs mystères :
$ a=rty84bn
$ echo $(expr $a : .*'[0-9]')
5
ce qui retourne la position du dernier caractère numérique.
Comment obtenir la position du premier caractère numérique (en fait, comment
extraire simplement le nombre) ?
Autre problème :
$ a="rty 84bn"
$ echo $(expr $a : .*'[0-9]')
expr: syntax error
Bien sûr je peux faire un :
a=${a/ /}
pour supprimer l'espace et éviter l'erreur, mais elle est surpremante car
d'après la doc "." remplace n'importe quel caractère !
Une idée ?
Jean-Claude
____________________________________________________
Want to buy your Pack or Services from Mandriva?
Go to http://store.mandriva.com
Join the Club : http://www.mandrivaclub.com
____________________________________________________