IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Preg en UTF-8 [RegEx]


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Points : 470
    Points
    470
    Par défaut Preg en UTF-8
    Bonjour,

    J'utilise habituellement la même petites fonction à base de regex depuis des années pour nettoyer mes chaines de caractères de leurs espaces et accents :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $in= preg_replace("#\[.*\]#iU", "", $in);
    $search = array ('@[éèêëÊË]@i','@[àâäÂÄ]@i','@[îïÎÏ]@i','@[ûùüÛÜ]@i','@[ôöÔÖ]@i','@[ç]@i','@[ ]@i','@[^a-zA-Z0-9_]@');
    $replace = array ('e','a','i','u','o','c','','');
    $login = preg_replace($search, $replace, $in);
    Seulement voilà, je démarre pour le coup un projet en UTF-8, et visiblement, comme pour beaucoup d'autres fonction de PHP, ça pose un problème !

    Donc si je lui donne à manger la chaine "&éç èzezêéxà", en charset iso-8859-1, pas de problème, il me retourne :

    ecezezeexa
    par contre, une fois que je passe en charset UTF-8, la même chose me donne :

    eeeceezezeeeexea
    Dans la plupart des fonctions de gestion de texte PHP, on à la possibilité de spécifier le charset, mais ça ne semble pas être le cas pour les preg...

    Quelqu'un aurait-il la bonté de me dire comment doivent être gérer les preg lorsque l'on est en UTF-8 ?

    En vous remerciant par avance !

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2008
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 504
    Points : 470
    Points
    470
    Par défaut
    Arf, j'avais complètement oublié de chercher du coté des modificateurs :p Hone sur moi !

    Merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Encodage de chaine -> UTF-8
    Par klarky88 dans le forum MFC
    Réponses: 2
    Dernier message: 26/05/2005, 18h13
  2. [io] UTF-8 et Eclipse
    Par michaelbob dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 25/05/2005, 10h27
  3. msXML compatible avec UTF-16
    Par cathar_rhythm dans le forum MFC
    Réponses: 1
    Dernier message: 23/05/2005, 15h42
  4. Mozilla & UTF-8
    Par SergioF dans le forum Applications et environnements graphiques
    Réponses: 6
    Dernier message: 11/05/2004, 14h00
  5. [WebForms] Encodage, UTF-8 et accents
    Par alexischmit dans le forum Général Dotnet
    Réponses: 4
    Dernier message: 28/04/2004, 12h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo