Page 1 sur 1

Pb Majuscules

Publié : 30 janv. 2007, 10:17
par guilhem_mdg
function _ucwords($txt){
$texte=preg_replace_callback('#\\W\\w#', '_ucwords_callback',ucfirst(strtolower($txt)));
}
function _ucwords_callback($m){
return strtoupper($m[0]);
}

_ucwords("Bréal-sous-montfort ") me renvoie BréAl-sous-Montfort
Comment faire ?

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1

Re: Pb Majuscules

Publié : 30 janv. 2007, 13:59
par calimo
guilhem_mdg a écrit :

Code : Tout sélectionner

function _ucwords($txt){
	$texte=preg_replace_callback('#\\W\\w#', '_ucwords_callback',ucfirst(strtolower($txt)));
}
BréAl-sous-Montfort
Tu es sur que ce n'est pas BréAl-Sous-Montfort ? Parce que dans ce cas ce serait étrange...

\w c'est un "raccourci" (ça a un nom scientifique dont je ne me souviens malheureusement plus :oops: ) pour la classe "word" qui comprend les caractères alphanumériques. Ce qui, normalement, comprend les caractères accentués (en tous cas en perl c'est le cas). Vérifie l'encodage (pour éviter d'interpréter des é qui ne sont certainement pas des mots) et peut-être aussi la locale dans laquelle tu travaille (il se peut que seul les caractères utilisés dans la langue soient acceptés… aucune idée comment y remédier) :wink:

Message envoyé avec : Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.1.1) Gecko/20061208 Firefox/2.0.0.1

Publié : 30 janv. 2007, 14:37
par guilhem_mdg
oui, je suis sûr... :lol:
L'encodage est du 8859-1... Est-ce bon ?

Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1