Le jour en 2 chiffres

Résolu
Chuck512 Messages postés 41 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 9 septembre 2005 - 30 janv. 2005 à 01:10
Chuck512 Messages postés 41 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 9 septembre 2005 - 30 janv. 2005 à 13:17
voila j'aimerais faire une correction sur l'entrée d'une date

Comment je peux faire pour lancer un message d'erreur lors d'une mauvaise entrée

exemple, quelqu'un tape:

!adddate lundi 2 fevrier



ca lui repondrais qu'il faut que le jour soit en 2 chiffres

Je vais quand meme pas tapper:

if ($3 isin %listjour) goto ok

if ($3 !isin %listjour) notice $nick 4Tu as fais une erreur, le jour doit etre en 2 chiffres, recommence ! | halt

avec une variable

%listjour 01,02,03,04,05,06,07,08,09,etc..,30,31



Y a t-il un moyen simple de dire si $3 egal 2 chiffres goto ok !

J'ai l'impression de bloquer pour pas grand chose !!

7 réponses

cs_fyltum Messages postés 407 Date d'inscription samedi 11 septembre 2004 Statut Membre Dernière intervention 25 août 2005
30 janv. 2005 à 01:25
Le mieux est d'utiliser des $regex je pense :



if ($regex($3,/[0-9]/g) == 2) goto ok
3
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 6
30 janv. 2005 à 01:39
fyltum ton truc vérifie seulement que $3 contient 2 chiffres

if $regex($3,^\d{2}$) { ...

ou

if ($3 isnum) && ($len($3) == 2) { ...

sont les deux soluces qui me viennent à l'esprit

PaDa
3
Hades53 Messages postés 231 Date d'inscription mercredi 12 février 2003 Statut Membre Dernière intervention 7 juillet 2009
30 janv. 2005 à 02:34
Non, ça ne validera pas si le jour précisé sera '30' ou '31', et ça autorisera les 00 &Cie.

^(0[1-9]|[1-2][0-9]|3[0-1]$) devrait être mieux si on compte vérifier le format.



Au lieu d'imposer la contrainte de mettre deux nombres, tu peux
rajouter automatiquement le 0, si l'utilisateur ne met qu'un seul
chiffre.


tokenize 32 $1-2 $base($3,10,10,2) $4-
3
cs_fyltum Messages postés 407 Date d'inscription samedi 11 septembre 2004 Statut Membre Dernière intervention 25 août 2005
30 janv. 2005 à 01:45
Pas bete :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_fyltum Messages postés 407 Date d'inscription samedi 11 septembre 2004 Statut Membre Dernière intervention 25 août 2005
30 janv. 2005 à 01:59
Et comme ça : $regex($3,^[0-2][0-9]$) ?
0
Hades53 Messages postés 231 Date d'inscription mercredi 12 février 2003 Statut Membre Dernière intervention 7 juillet 2009
30 janv. 2005 à 02:37
^(0[1-9]|[1-2][0-9]|3[0-1])$ plutôt.

Petite erreur syntaxique ;)
0
Chuck512 Messages postés 41 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 9 septembre 2005
30 janv. 2005 à 13:17
Les fameuses expressions regulieres dont tu m'avais deja parlé PaDa !!

Me parressant trop complexe pour mes neurones, j'ai mis ca en bemol !



Et je vois que j'aurais jamais pu trouver ca tout seul :[



Je vais essayer toutes vos propositions !

En meme temps la solution de Hades m'interresse avec le tokenize par
contre si je veux mettre l'heure apres ( 18h00) qu'est ce que je dois
mettre à la place de $4-
0
Rejoignez-nous