Page 1 sur 1

Fonction preg_match et gestion des accents

Posté : 10 août 2010, 11:01
par Mila
Bonjour,

J'utilise la fonction preg_match pour récupérer le premier mot d'une phrase...seulement celle-ci s'arrête quand elle rencontre un caractère accentué.

Voici la fonction :

Code : Tout sélectionner

<?php $texte = $this->result['var_intitule']; $mot = ''; if (preg_match('/^(.+)\b/U', $texte, $matches)) { $mot = $matches[1]; } else { $mot = $texte; # Pour parer tout éventualité } echo $mot; ?>
Je m'explique si le $texte= école alors $mot=é, comment récupérer le mot en entier?

Merci d'avance!

Mila

Re: Fonction preg_match et gestion des accents

Posté : 10 août 2010, 14:26
par ouckileou
Pourquoi ne pas utiliser explode() ? ça me paraît plus logique et plus simple que d'utiliser une expression régulière :)

Re: Fonction preg_match et gestion des accents

Posté : 10 août 2010, 14:38
par Mila
oui merci j'avais trouvé!

Re: Fonction preg_match et gestion des accents

Posté : 10 août 2010, 15:40
par stealth35
pour l'unicode c'est "u" (en minuscule) :wink:

Re: Fonction preg_match et gestion des accents

Posté : 10 août 2010, 16:02
par Mila
Comment "exploder" plusieurs caractères dans une phrase.

Exemple:

maPhrase= école/ouverte de la ville.
je veux qu'il me récupère que le mot école? pour l'instant il me récupère école/ouverte ...ce qui est faut mais je vais pas faire des explode d'explode à l'infini??

PS: à la place de "/" je pourrai avoir un "-" une "," ou encore "(".

Merci d'avance!

Re: Fonction preg_match et gestion des accents

Posté : 10 août 2010, 16:12
par stealth35
c'est bien un preg_match dans ton cas

la limite de mot étant \b, ca donnerai : /^\b(\w+)\b/u

Re: Fonction preg_match et gestion des accents

Posté : 10 août 2010, 16:37
par Mila
Merci!