Ajouter un commentaire

johnstyle
Regex - extraire des balises HTML imbiquées

Bonjour,
j'ai un petit problème avec les expressions régulières sous PHP.

Je cherche à extraire le contenu de toutes les balises HTML

ne contenant pas d'autres balises
mais pouvant contenir tout autre contenu HTML.

Voici le début de mes recherches :

	$string = '<div><div>Contenu de ma <strong>div 1</strong></div></div><div><div>Contenu de ma <strong>div 2</strong></div></div>';
	if(preg_match_all("#<div[^>]*>((?:[^[]|<(?!div]))*)</div>#siU", $string, $m)){
		print_r($m);
	}

Ce qui donne :

Array
(
    [0] => Array
        (
            [0] => <div><div>Contenu de ma <strong>div 1</strong></div>
            [1] => <div><div>Contenu de ma <strong>div 2</strong></div>
        )

    [1] => Array
        (
            [0] => <div>Contenu de ma <strong>div 1</strong>
            [1] => <div>Contenu de ma <strong>div 2</strong>

        )

)

Je pense que j'y suis presque mais je ne parvient pas à trouver la solution.

Quelqu'un aurait-il une idée ? ou du moins une piste.
Je vous remercie.

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
  QQQ    RRRR   PPPP   DDD   X   X 
Q Q R R P P D D X X
Q Q RRRR PPPP D D X
Q QQ R R P D D X X
QQQQ R RR P DDD X X
Q