Bonjour à tous,
J'ai une chaîne html avec la structure suivante: "<h3>Un titre</h3><p class='home'><img src='fichier' /></p><p>du texte</p>"
Je veux décomposer cette chaîne en extrayant séparément:
- le titre h3
- l'image
- le reste du texte (un ou plusieurs paragraphes)
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
	$tmp = file_get_contents(PAGE_NAME);
	$pattern = "#<h3>(.+)</h3>#Usi";
	$_POST['contentTitle'] = preg_replace($pattern, '$1', $tmp);
	$pattern = "#<p class='home'>(.+)</p>Usi#";
	$img = preg_replace($pattern, '$1', $tmp));
	var_dump($img);
	$pattern = "#<p>(.+)</p>#si";
	$_POST['content'] = preg_replace($pattern, '$1', $tmp);
Avec le code qui précède, j'obtiens:
- pour $_POST['contentTitle']: Un titre<p class... jusqu'à la fin
- var_dump renvoie la totalité
- pour $_POST['content']: "<h3>Un titre</h3><p class='home'><img src='fichier' /></p>du texte

J'ai lu et relu et re-relu un cours sur les regex et je désespère de moi-même.