Supprimer les espaces multiples d’une chaine de caractère
Il arrive qu’on doive manipuler des chaînes de caractères dans lesquels plusieurs espaces consécutifs se sont glissés, comme dans cette chaîne :
[pastacode lang= »php » manual= »%24str%20%3D%20’Bonjour%20%20%20%20%20%20%20Toto%20!’%20%3B%20%0A » message= » » highlight= » » provider= »manual »/]Cela devient embêtant si l’on doit traiter cette chaine de caractère au caractère près. Imaginons par exemple que nous voulons remplacer tous les « Bonjour Toto » d’une chaîne par des « Bonjour Tata », str_replace()
ne retournera rien car il ne trouvera pas la chaine telle que demandée :
Mais avec une expression régulière, nous pouvons demander à ce que tous les espaces multiples soient transformés en un seul espace.
C’est ce que nous allons faire avec la fonction preg_replace()
qui recherche et remplace par une expression rationnelle standard :
Si cet article vous a aidé, si vous avez des questions ou des améliorations à proposer, n'hésitez pas à me laisser un commentaire en bas de page !