xpatval Posté 10 Septembre 2005 Posté 10 Septembre 2005 Bonjour, Je souhaite remplacer, dans cette chaîne B AFG 123, les espaces par des underscores: B_AFG_123 J'ai donc essayé avec les regexp, histoire de s'y mettre un jour, mais bien entendu, je me plante constamment. Comment ecririez-vous cela ? xpatval
MS-DOS_1991 Posté 10 Septembre 2005 Posté 10 Septembre 2005 (modifié) Salut $chaine = $_POST['chaine'];$new_text = preg_replace("/\s\s+/", '_', $chaine);echo $new_text; Non testé... Modifié 10 Septembre 2005 par MS-DOS_1991
TheRec Posté 10 Septembre 2005 Posté 10 Septembre 2005 Bonjour, Ce que t'a donné MS-DOS_1991 va pour plsuieurs espaces qui se suivent (2 ou plus).. Si tu veux remplacer CHAQUE esapce (même lorsqu'ils sont consécutifs) par un "_" utilise cela : preg_replace("/\s/", '_', $chaine) Si tu veux remplacer les groupe d'espaces consécutifs ainsi que les espaces seul par un seul "_": preg_replace("/\s+/", '_', $chaine)
rottman Posté 10 Septembre 2005 Posté 10 Septembre 2005 Tu peux tout simplement faire : <?phpstr_replace(" ","_",$str);?>
MarvinLeRouge Posté 10 Septembre 2005 Posté 10 Septembre 2005 ... ce qui remplacerait chaque espace par un underscore
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant