Extraire un code postal dans une chaine

WRInaute impliqué
Bonjour,
je cherche a extraire le code postal d'une ville dans une chaine de caractere ( en php ) et je seche un peu sur la maniere de m'y prendre.
Le seul repere que j'ai dans cette chaine c'est les caractere qui precedent le code postal, en l'occurrence "$debut de chaine Code Postal : XXXXX $fin de chaine
Si quelqu'un a une idée
merci
 
WRInaute impliqué
exemple de la chaine :
Toutes les informations sur Nahuja ; Ville : Nahuja ; Code Postal : 66340 ; Département : Pyrénées-Orientales ; Région : Languedoc-Roussillon
 
WRInaute discret
preg_match('/[0-9]{5}/',$mystr,$result ,PREG_OFFSET_CAPTURE,3);

print $result[0][0]


avec ta ligne dans $mystr

c'est moche qd meme
 
WRInaute occasionnel
<?php
$chaine="Toutes les informations sur Nahuja ; Ville : Nahuja ; Code Postal : 66340 ; Département : Pyrénées-Orientales ; Région : Languedoc-Roussillon";
$fragments=split("Code Postal :",$chaine);
$fragments2=split("; Département :",$fragments[1]);
echo $fragments2[0];
?>
 
WRInaute impliqué
hum... je crois que je m'en sors pas,
avec la foonction split ca me renvoit une chaine vide et avec preg_match... j'arrive pas a recuperer le resultat...
Hum... oui je suis une bille en php ;-)
 
WRInaute discret
Code:
preg_match('/[0-9]{5}/',$mystr,$result ,PREG_OFFSET_CAPTURE,3); 

print $result[0][0]

dans la premiere ligne on indique dans quelle variable on va affecter les resultats ($result ds mon cas)

ensuite il faut afficher l'index [0][0] de cette variable
dans mon cas, le contenu du CP serait dans : $result[0][0]

chez moi ca marche en tous cas

si quelqu'un a une solution plus simple ;) je pense que ca doit se trouver
 
WRInaute impliqué
Grand Merci !!!!! a vous ;-)
Ca Marche avec preg_match, j'avais du rater qq chose dans le code, je vois pas ou mais je viens de refaire et la ca tourne.
Je comprends pas bien la fonction preg_match mais je vais regarder ca.
Grand merci encore
 
Discussions similaires
Haut