Expressions régulières pour un nombre entier ou décimale JS

Messages postés
1
Date d'inscription
mardi 19 septembre 2017
Dernière intervention
19 septembre 2017
- - Dernière réponse : Whismeril
Messages postés
12362
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
- 17 janv. 2018 à 09:58
Bonjour,

Je cherche à vérifier via une expression régulière si l'utilisateur a bien écrit, soit:
- Un nombre entier ou un nombre décimal, avec virgule ou point, admettant deux chiffres maximum après la virgule (ou point)
- Ce nombre doit être inférieure ou égale à 30
- Toutes lettres ou caractères spéciaux (autres que la virgule ou le point) ne sont pas autorisés
Voici ce que j'ai écris jusqu'à présent:
var regPoids=new RegExp('([0-9]+)([.,][0-9]{1,2})?');
Afficher la suite 

Votre réponse

1 réponse

Messages postés
37
Date d'inscription
mercredi 8 novembre 2006
Dernière intervention
9 décembre 2018
0
Merci
"- Ce nombre doit être inférieure ou égale à 30"
Les expression régulière sont plus utile pour tester la forme d'une chaîne de caractères mieux vaut faire un test
essai plutôt

var regPoids=new RegExp('([0-9]+,[0-9]+)|30');

Mais je ne suis pas bien sûr à cause du test "inférieur ou égale"
l'expression '[0-9]+ signifie que tu accepte toute les valeurs et le |30 signifie que dans le cas contraire tu accepte la valeur 30
--
Whismeril
Messages postés
12362
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
-
Bonjour
regarde le résultat
http://regexstorm.net/tester?p=%28%5B0-9%5D%2B%2C%5B0-9%5D%2B%29%7C30&i=31%2C2%0D%0A21%0D%0A

C'est pas ce qu'il demande.
Whismeril
Messages postés
12362
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
-
Voilà qui répond à peu près
http://regexstorm.net/tester?p=30%7c%28%3f%3a%5b12%5d%3f%5cd%28%3f%3a%5b%2c%5c.%5d%5cd%7b1%2c2%7d%29%3f%29&i=31%2c2%0d%0a21%0d%0a30%0d%0a30.1%0d%0a2%2c12%0d%0a2.12%0d%0a2.123%0d%0a


Quand je dis à peu près c'est qu'il n'extrait pas au milieu d'un texte (la preuve en image), mais pour une expression complète c'est bon.
KX
Messages postés
15855
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
10 décembre 2018
> Whismeril
Messages postés
12362
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
-
Bonjour,

Pour la lisibilité du site et la pérennité de son contenu (éviter de futurs liens morts), merci de poster le code en intégralité sur CodeS-SourceS, quitte à conserver le lien pour information.

Exemple :
30|(?:[12]?\d(?:[,\.]\d{1,2})?)
Whismeril
Messages postés
12362
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
9 décembre 2018
> KX
Messages postés
15855
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
10 décembre 2018
-
Ha oui bien vu.
Bon après j'espère que depuis septembre Niste03 a pu se débrouiller...
Commenter la réponse de CecilCordheley

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.