Bonjour,
Je débute dans les expressions régulières et j'ai un petit soucis.
Je dois formater une chaine de caractères saisie par un utilisateur.
Je dois remplacer les caractères accentués par les mêmes non accentués et les ponctuations et les espaces par des '_'.
Voici le code que j'utilise (pas complet) :
Si je saisi une chaine avec divers caractères accentués et des espaces, ça me remplace bien les espaces mais pas les caractères accentués.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $pattern = array('/à/','/â/','/ä/','/é/','/è/','/ê/','/ë/','/ï/','/î/','/ô/','/ö/','/ù/','/ü/','/û/','/ç/','/ /'); $replace = array('a','a','a','e','e','e','e','i','i','o','o','u','u','u','c','_'); $var = preg_replace($pattern,$replace,$var_saisie);
Quelqu'un pourrait m'expliquer le fonctionnement ?
Partager