Expression régulière - Vérifier si un nombre est supérieur à une valeur [Résolu]

cs_prim 12 Messages postés mardi 17 juin 2003Date d'inscription 23 mars 2009 Dernière intervention - 23 mars 2009 à 10:03 - Dernière réponse : Renfield 17308 Messages postés mercredi 2 janvier 2002Date d'inscription 22 août 2018 Dernière intervention
- 23 mars 2009 à 16:02
Bonjour,

Est-ce que quelqu'un connaît une expression régulière pour tester si un nombre est supérieur à 30 par exemple.

J'ai fouiller un peu mais j'ai pas trouver.

Merci de votre aide.
Afficher la suite 

Votre réponse

12 réponses

Meilleure réponse
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 23 mars 2009 à 13:43
3
Merci
si ça baigne : nickel
les expressions régulières ne traient que des
chaînes de caractères... à priori ( ? )

Merci Bul3 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de Bul3
Meilleure réponse
Renfield 17308 Messages postés mercredi 2 janvier 2002Date d'inscription 22 août 2018 Dernière intervention - 23 mars 2009 à 15:03
3
Merci
simplifions:

>30 => ^((3[1-9])|([4-9]\d)|([1-9]\d{2,}))$

et

>=30 => ^((3\d)|([4-9][0-9])|([1-9]\d{2,}))$




et effectivement, les expression ne traitent que les caractères

Merci Renfield 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 90 internautes ce mois-ci

Commenter la réponse de Renfield
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 23 mars 2009 à 10:10
0
Merci
Bonjour,

une expression régulière ? pourquoi faire ?

if ( nombre > 30 ) { il l'est ! }

non ?

Cordialement
Commenter la réponse de Bul3
cs_prim 12 Messages postés mardi 17 juin 2003Date d'inscription 23 mars 2009 Dernière intervention - 23 mars 2009 à 10:20
0
Merci
Effectivement là c'est la méthode simple ;)

Mais j'ai vraiment besoin d'une expression régulière pour faire ce dont j'ai besoin.

Car j'ai un builder qui me crée un formulaire et qui teste les champs à travers une expression régulière. Donc j'ai pas la main sur le code mais juste sur le builder qui n'accepte qu'une expression régulière.

Si quelqu'un s'y connaît en regexp, ça serait gentil :)

Merci
Commenter la réponse de cs_prim
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 23 mars 2009 à 12:19
0
Merci
loin de connaître très très bien les expressions régulières !

à part contrôler que le 1er caractères est compris entre 3 et 9,
et le 2ème entre 0 et 9 ou que le champ est numérique
je ne vois pas.

pas sûr qu'une expression régulière puisse tester > valeur,
mais c'est tellement puissant que tout est possible !

attend d'autres avis.
Commenter la réponse de Bul3
cs_prim 12 Messages postés mardi 17 juin 2003Date d'inscription 23 mars 2009 Dernière intervention - 23 mars 2009 à 12:55
0
Merci
Merci de ta réponse.

Pas de spécialiste en regexp par ici :(
Commenter la réponse de cs_prim
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 23 mars 2009 à 13:24
0
Merci
peut être sur le forum dédié ?
http://regex.codes-sources.com/
Commenter la réponse de Bul3
cs_prim 12 Messages postés mardi 17 juin 2003Date d'inscription 23 mars 2009 Dernière intervention - 23 mars 2009 à 13:38
0
Merci
Merci je ne connaissais effectivement pas ce site.

Mon problème est réglé.

Si ça en intéresse :
Strictement supérieur à 30 :
(^[3]{1}[1-9]{1}$)|(^[4-9]{1}[0-9]{1}$)|(^[1-9]{1}[0-9]{2,1000}$)

Supérieur ou égale à 30 :
(^[3-9]{1}[0-9]+$)|(^[1-9]{1}[0-9]{2,1000}$)

Merci
Commenter la réponse de cs_prim
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 23 mars 2009 à 15:22
0
Merci
"121" c'est possible ?
Commenter la réponse de Bul3
Renfield 17308 Messages postés mercredi 2 janvier 2002Date d'inscription 22 août 2018 Dernière intervention - 23 mars 2009 à 15:30
0
Merci
sur le même modèle:

> 121

^((12[2-9])|(1[3-9]\d)|([2-9]\d{2,}))$

décriptons :

^( )$

teste l'integralité ( 125€ par exemple, ne sera pas testé)

ensuite, on a trois groupes, trois alternatives séparées par un |

sont acceptés, donc:

12[2-9] 12 suivi d'un chiffre compris entre 2 et9 (122 >= x >= 129)

1[3-9]\d 1 suivit de 3 à 9, suivi d'un chiffre (130 >= x >= 199)

[2-9]\d{2,} un chiffre de 1 à 9 (on zappe les 0 non significatifs) suivi de 2 à une infinité de chiffres (200 >= x >= +infini
Commenter la réponse de Renfield
Bul3 4934 Messages postés samedi 1 juillet 2006Date d'inscription 2 février 2015 Dernière intervention - 23 mars 2009 à 15:50
0
Merci
ma question était plus :
est-ce qu'un nombre > 100 peut-être "saisi"
et est-ce que l'expression régulière va bien répondre ok ? ( 121 est bien > 30 )

remarque que http://www.lesmotsontunsens.com/... target='_blank'>http://www.google.fr/..., j'ai qu'à tester et pis c'est tout ;o)
Commenter la réponse de Bul3
Renfield 17308 Messages postés mercredi 2 janvier 2002Date d'inscription 22 août 2018 Dernière intervention - 23 mars 2009 à 16:02
0
Merci
oui, tu n'a pas de limite superieure
Commenter la réponse de Renfield

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.