Regex: Problème pour passer d'une variable à une autre

Olivier25
Invité n'ayant pas de compte PHPfrance

14 févr. 2007, 10:23

Bonjour!

Voilà, un petit problème tout simple pour les amateurs d'expressions régulières (mais moi là, perso, je sèche complètement!):

Voici ma variable de départ:
$depart='<MaBalise>UneStringQuelconque</MaBalise>';

Et voilà la variable d'arrivée que je voudrais obtenir:
$arrivee='<Balise1>UneStringQuelconque</Balise1><Balise2>UneStringQuelconque</Balise2>';

La question est: comment faire pour passer d'une variable à une autre. J'ai potassé le chapitre sur les expressions régulières mais je m'y perds totalement!

Quelqu'un pour m'aider? ;-)
Merci!
Bonne journée,

Olivier

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

14 févr. 2007, 11:46

Il faut décomposer un peu... la première chose à faire est de capturer la chaine qui t'interesse (voir la doc des expreg sur l'utilisation des parenthèse).

Tu peux ensuite récupérer cette chaine avec un preg_match() par exemple et construire ta nouvelle chaine, ou bien directement faire le remplacement avec un preg_replace() en utilisant les variables $1 ou \1 qui contiennent ta chaine :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...