Expresions régulières et test pair/impair

Résolu
cs_nicoulas
Messages postés
21
Date d'inscription
dimanche 8 février 2004
Statut
Membre
Dernière intervention
4 mars 2011
- 20 juin 2006 à 09:53
cs_nicoulas
Messages postés
21
Date d'inscription
dimanche 8 février 2004
Statut
Membre
Dernière intervention
4 mars 2011
- 21 juin 2006 à 23:44
Bonjour,

Je ne suis pas doué du tout en expressions régulières.

J'ai une chaine de 11 chiffres (par exemple 77061506994).

1) Dans cette chaîne, je dois isoler le 9ème chiffre (77061506994).
    Ensuite, je dois tester si ce chiffre est pair ou impair.

2) Avec cette même chaîne, je dois également isoler les 6 premier chiffres (77061506994) puis les afficher comme une date de naisance (15/06/77).

Pourriez-vous m'aider?

Un tout grand merci d'avance.

Nicolas

3 réponses

cs_nicoulas
Messages postés
21
Date d'inscription
dimanche 8 février 2004
Statut
Membre
Dernière intervention
4 mars 2011

20 juin 2006 à 11:36
OK. J'ai trouvé une solution avec Mid.

<cfset nb = 77061506994>

1)  <cfset chiffre9 = #Mid(nb,9,1)#>
   <cfset calcul = (round(chiffre9 / 2) - (chiffre9 / 2))>
   <cfif #calcul# EQ 0>
    <cfset valChiffre9 = "Pair">
   <cfelse>
    <cfset valChiffre9 = "Impair">
   </cfif>
   

-------------------------------   
   
2)   <cfset ddn = "#Mid(nb,5,2)#/#Mid(nb,3,2)#/#Mid(nb,1,2)#">
   
 
3
nickadele
Messages postés
1251
Date d'inscription
mercredi 7 août 2002
Statut
Modérateur
Dernière intervention
10 avril 2013

21 juin 2006 à 10:52
Bonjour,

pour savoir si un nombre est paire ou impaire, utilise plutot la fonction mod, cette fonction te renvoie le modulo (reste d'une division) donc :
5 mod 2 renverra 1 (impaire)
6 mod 2 renverra 0 (paire)
<cfif chiffre9 mod 2 eq 0>
<cfset valChiffre9 = "Pair">
<cfelse>
<cfset valChiffre9 = "Impair">
</cfif>

Nickadele
0
cs_nicoulas
Messages postés
21
Date d'inscription
dimanche 8 février 2004
Statut
Membre
Dernière intervention
4 mars 2011

21 juin 2006 à 23:44
Thanks a lot!
0