Php, remplacer chaine de caractère
Résolu
Julien
-
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
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:
- Php, remplacer chaine de caractère
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Remplacant de coco - Accueil - Réseaux sociaux
- Remplacer disque dur par ssd - Guide
3 réponses
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]."_";
}
$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]."_";
}