par
loutoune54 » 18 juin 2013, 17:13
Bonjour à tous,
Je rencontre actuellement un soucis avec l'utilisation de la fonction preg_replace().
Je souhaite remplacer un tag HTML (ici la div de classe "principal") et
tout son contenu.
Malheureusement je n'arrive pas à obtenir le résultat souhaité car il se trouve que la div "principal" contient deux autres div imbriquées.
Code : Tout sélectionner
$var = '
<div class="principal">
<p>1</p>
<div class="secondaire">
<p>2</p>
<div class="tertiaire">
<p>3</p>
</div>
</div>
</div>
<div class="test">
BLABLA
</div>';
$var = preg_replace('/<div [^>]*class="principal">.*?<\/div>/ms', '', $var);
echo $var;
J'obtiens
au lieu de
Pouvez-vous m'aider à obtenir ce résultat s'il vous plait ?
Merci par avance de vos réponses.
Benjamin.
Bonjour à tous,
Je rencontre actuellement un soucis avec l'utilisation de la fonction preg_replace().
Je souhaite remplacer un tag HTML (ici la div de classe "principal") et [u]tout [/u]son contenu.
Malheureusement je n'arrive pas à obtenir le résultat souhaité car il se trouve que la div "principal" contient deux autres div imbriquées.
[code]$var = '
<div class="principal">
<p>1</p>
<div class="secondaire">
<p>2</p>
<div class="tertiaire">
<p>3</p>
</div>
</div>
</div>
<div class="test">
BLABLA
</div>';
$var = preg_replace('/<div [^>]*class="principal">.*?<\/div>/ms', '', $var);
echo $var;[/code]
J'obtiens
[code]</div>
</div>
<div class="test">
BLABLA
</div>[/code]
au lieu de
[code]
<div class="test">
BLABLA
</div>[/code]
Pouvez-vous m'aider à obtenir ce résultat s'il vous plait ?
Merci par avance de vos réponses.
Benjamin.