Php, remplacer chaine de caractère

Résolu
Julien -  
 Julien -
Bonjour,

J'ai pas mal cherché sur les forums et dans les fonctions sur php.net mais n'ayant rien trouvé de concluant je m'adresse a vous.

J'ai une chaine de caractère qui vient d'un formulaire.
J'aimerai remplacer chaque lettre de ma chaine de caractère par plusieurs caractères.

Par exemple sur le mot : test
Je veux remplacer la lette "t" par "LETTRE_T_"; remplacer la lettre "e" par "LETTRE_E_" etc
Ce qui me donnerai a la fin ceci, le mot test serai remplacé par : LETTRE_T_LETTRE_E_LETTRE_S_LETTRE_T_

Voilà, j'ai trouvé des fonctions permettant de remplacer un caractère par un autre mais pas par plusieurs autre ce que je cherche à faire.

Merci de vos réponses
Cordialement
A voir également:

3 réponses

bizu53 Messages postés 1274 Date d'inscription   Statut Membre Dernière intervention   861
 
Pourquoi str_replace ne te convient pas ? (http://fr3.php.net/manual/fr/function.str-replace.php)

$chaine = str_replace('t', "LETTRE_T_", $chaine);

Tu peux mettre te faire une array de lettre a b c d ... et une autre array de remplacement correspondant LETTRE_A_, LETTRE_B_, LETTRE_C_, LETTRE_D_ ...

Au pire, si ce n'est que pour ajouter "LETTRE_" devant et "_" derrière tu peux faire une while où tu concatènes.

$sortie = "";
for($i = 0 ; $i < strlen($chaine); $i++)
{
$sortie .= "LETTRE_".$chaine[$i]."_";
}
1
el plaga Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   4
 
Il faut utiliser les Les expressions régulières
0
Julien
 
Merci bizu53 ca marche

Ce que je comprends pas c'est que quand j'ai teste str_replace la 1ere fois, ça ne marchait pas, elle me remplaçait justement qu'un seul caractère.
0