20/10/2015, 12:26:46
En PCRE pour gérer la temp négative :
(-?\d+)\.(\d).*
Les expressions régulières sont super pratiques mais nécessitent de bien s'y plonger pour les comprendre, certains caractères pouvant changer de signification suivant leur utilisation...
Ici les parenthèses signifient une capture qu'on retrouvera dans $1, $2 etc
-? pour 0 ou 1 signe '-', c'est l'équivalent de {0,1}
\d+ pour 1 ou n signe décimal (équivalent de \d{1,} ou [0-9]{1,})
\. pour le ., car le point seul signifie n'importe quel caractère, or on veut explicitement le caractère '.' ici
re \d pour la décimale
ensuite .* en dehors des parenthèses pour dire que tout le reste ne nous intéresse pas (n'importe quel caractère présent 0 ou n fois).
Pas moyen d'arrondir avec de pures expressions régulières par contre.
Je n'ai pas de super tuto a donner sur les regex mais c'est vrai qu'une fois qu'on connait c'est très sympa à utiliser.