Comment récupérer les premiers caractères numériques d'une chaine en PHP ?

Réponses rédigées par Antoine
Dernière mise à jour : 2020-12-17 11:47:41
Thèmes : webmaster - php
Question

Bonjour, j'ai plusieurs chaines de caractères qui sont des adresses, et je voudrais récupérer les numéros de rue :

1 rue de Paris. 125 chemin du Vent. 1245 avenue Saint-Michel.

Comment puis-je récupérer les premiers chiffres des chaines en PHP ?

Réponse

Pour récupérer les premiers caractères numérique d'une chaine en PHP, vous pouvez utliser les fonctions PHP suivantes :

  • str_split() pour créer un tableau à partir des caractères de la chaine.
  • count() pour compter le nombre de caractères.
  • is_numeric() pour vérifier si un caractère est du type numérique.
  • substr() pour récupérer les premiers chiffres de la chaine.

La fonction PHP suivantes récupère la position du dernier caractère numérique de la chaine pour ensuite ne sélectionner que les premiers chiffres :

<?php
$chaine = "1245 avenue Saint-Michel.";
$caracteres = str_split($chaine);
for($i = 0; $i < count($caracteres); ++$i){
   if(!is_numeric($caracteres[$i])){
   $numero = substr($chaine, 0,$i+1);
   break;
   }
}
echo $numero;
?>