Bonjour,
Je recherche une expression réguliere en JS qui me permette de tester une valeur qui soit un entier ou un décimal (avec "." ou ",").
Quelqu'un aurait il ça sous la main par hasard?
D'avance merci!
Bonjour,
Je recherche une expression réguliere en JS qui me permette de tester une valeur qui soit un entier ou un décimal (avec "." ou ",").
Quelqu'un aurait il ça sous la main par hasard?
D'avance merci!
valide
Code : Sélectionner tout - Visualiser dans une fenêtre à part /^[0-9]+([.,][0-9]+)?$/
1
1.1
111,11111
1,111
etc...
ne valide pas
1.
1,
1.1.1
.0
,123
1,11.11
etc ...
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Il y a aussi éventuellement la solution consistant à comparer la chaine originale avec une chaine issue de la double conversion chaine > nombre > chaine.
Je pense à quelque chose comme :Enfin c'est une piste quoi ^^
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 function verif(chaine) { chaine = chaine.replace(/,/g, "."); return (parseFloat(chaine).toString() == chaine); }
Quoi qu'il en soit, la regexp de SF semble nickel* (si on y ajoute un détail pour gérer les nombres négatifs)
* heu... tiens au fait : ne doit-on pas échapper le ".", même quand il est contenu dans des "[]" ?
Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part /^(-)?[0-9]+([.,][0-9]+)?$/...me rappelait pas.
Et une dernière petite correction quand même :Sur le forum JS, notre boss de la regexp a des particularités anatomiques inattenduesQuelqu'un aurait il ça sous lamainpatte palmée par hasard?![]()
En effet je ne vois pas le coté négatif des choses, trop optimiste que je suis
autre pisteaprès le replace du séparateur décimal
Code : Sélectionner tout - Visualiser dans une fenêtre à part !isNaN
Ma page Developpez - Mon Blog Developpez
Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
Votre post est résolu ? Alors n'oubliez pas le Tag![]()
Venez sur le Chat de Développez !
Tiens je l'avais oubliée cette fonction ^^
Du coup j'ai testé dans la console de Firebug et j'allais poster pour dire c'est la meilleure solution... mais ".2" passe le test...
Autre chose en passant : si jamais tu as besoin d'accepter les notations scientifiques (genre 1.548715e54) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part /^(-)?[0-9]+([.,][0-9]+(e(-)?[0-9]+)?)?$/
Salut,
+1on y ajoute un détail pour gérer les nombres négatifs
Bah tiens justement ! Puisqu'on y est, on peut prendre en compte : +1
Code : Sélectionner tout - Visualiser dans une fenêtre à part /^[-+]?[0-9]+...
Partager