Expression reguliere - PHP
Résolu
Moriar
-
Moriar -
Moriar -
Bonjour !
Je bloque actuellement sur quelques chose d'assez important en PHP.
Il me faut (pour un stage) identifier (en php) les chaines de caractere de la forme suivante : dd/dd
J'ai donc essayé plusieurs expressions régulieres mais aucune ne donne le résultat souhaité, pourriez-vous m'aider ?
L'expression que je trouve la plus logique est celle-ci : ^[:digit:]{2}\/[:digit:]{2}$
Pour plus de précision voici un bout de mon code :
Je bloque actuellement sur quelques chose d'assez important en PHP.
Il me faut (pour un stage) identifier (en php) les chaines de caractere de la forme suivante : dd/dd
J'ai donc essayé plusieurs expressions régulieres mais aucune ne donne le résultat souhaité, pourriez-vous m'aider ?
L'expression que je trouve la plus logique est celle-ci : ^[:digit:]{2}\/[:digit:]{2}$
Pour plus de précision voici un bout de mon code :
$telefon_date = substr($telefon, 1 ,5); if(ereg("^[:digit:]{2}\/[:digit:]{2}$", $telefon_date)) {
A voir également:
- Expression reguliere - PHP
- Easy php - Télécharger - Divers Web & Internet
- Expression écrite cm1 cm2 télécharger gratuit - Télécharger - Éducatifs
- Microsoft expression encoder - Télécharger - Divers Utilitaires
- Expert php pinterest - Télécharger - Langages
- Php alert ✓ - Forum PHP
6 réponses
Essaye plutôt avec la fonction preg_match(), elle est réputée beaucoup moins consommatrice de ressource et je trouve personnellement sont comportement plus cohérent :
Sinon tu peux aussi faire ceci :
$telefon_date = substr($telefon, 1 ,5); if(preg_match("#^[:digit:]{2}\/[:digit:]{2}$#", $telefon_date)) { }
Sinon tu peux aussi faire ceci :
$telefon_date = substr($telefon, 1 ,5); if(preg_match("#^[0-9]{2}\/[0-9]{2}$#", $telefon_date)) { }
Ca n'a pas l'air de fonctionner.
Mais je crois savoir d'où ça vient. La chaine que j'analyse est stoquée en tant que varchar dans ma BDD. les deux premier caractere ne sont donc peut être pas considéré comme des nombres ?
J'avoue que je ne maitrise pas vraiment le typage en sql et en php.
Mais je crois savoir d'où ça vient. La chaine que j'analyse est stoquée en tant que varchar dans ma BDD. les deux premier caractere ne sont donc peut être pas considéré comme des nombres ?
J'avoue que je ne maitrise pas vraiment le typage en sql et en php.
Les expressions rationnelles ne s'appliquent que sur des chaînes de caractère, il n'y a pas de problèmes de typage possible.
Je te conseille d'essayer de tester ton expression par petits bouts, histoire de voir à quel endroit ça bloque...
Je te conseille d'essayer de tester ton expression par petits bouts, histoire de voir à quel endroit ça bloque...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question