Bonjour,
J'arrive pas a faire une expression régulière pour récupérer toute les date trouver dans un texte dans un tableau.
Les dates seront de ce format 12/01/2008.
Merci de votre aide.
Version imprimable
Bonjour,
J'arrive pas a faire une expression régulière pour récupérer toute les date trouver dans un texte dans un tableau.
Les dates seront de ce format 12/01/2008.
Merci de votre aide.
Si c'est juste l'expression régulière qu'il te manque il me semble que ceci devrait faire l'affaire :
"[0-3][0-9]/[0-1][0-9]/[1-2][0-9][0-9][0-9]"
Quand j'utilise la dedans ca me trouve rien car moi ma date peut etre melanger avec du texte aussi
preg_match_all("!^[0-3][0-9]/[0-1][0-9]/[1-2][0-9][0-9][0-9]$!",$date,$matches,PREG_SET_ORDER);
Voici ce qui devrait résoudre ton pb :
Code:preg_match('`^((0[1-9])|(1\d)|(2\d)|(3[0-1]))\/((0[1-9])|(1[0-2]))\/(\d{4})',$date,$matches,PREG_SET_ORDER) ;
Y a une erreur dans ta ligne de code que je trouve pas car il me donne ca comme erreur : Invalid flags specified
merci a toi
Jai trouvé l'erreur mais voila si je met du texte par exemple :
Blaaaaa 12/08/1945 bvlividfidifdgdg 14/01/2005 dfdfdfdf.
Ca ne marche pas il ne me ressort pas les 2 dates.
Merci a toi.
Salut, il me semble que si tu fais ceci, ça devrait marcher
Bon développement ;)Code:
1
2
3
4
5
6 <?php $pattern = '#(0[1-9]|1\d|2\d|3\d)/(0[1-9]|1[0-2])/(\d{4})#'; $subject = 'Blaaaaa 12/08/1945 bvlividfidifdgdg 14/12/2005 dfdfdfdf.'; preg_match_all($pattern, $subject, $matches); var_dump($matches[0]); ?>
Attention, il s'agit juste d'une vérification sur le format, pas sur la validité d'une date ; par exemple, le 31/02/2008 est considéré ici comme une date
Merci beaucoup pour ton aide.