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

3 réponses

  1. Utilisateur anonyme
     
    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
  2. el plaga Messages postés 93 Statut Membre 4
     
    Il faut utiliser les Les expressions régulières
    0
  3. 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