Как удалить содержимое DIV?

<div id="main">
	<div id="inside">текст</div>
	<div class="class">текст</div>
</div>

Вопрос: как мне удалить содержимое div id=main целиком до закрывающего его тега, т.к. при применении:
$text = preg_replace("/<div\sid=\"main\"(.*?)<\/div>/ism", "", $text);

Он удалит до первого закрывающего DIVа т.е. в данном случае того который закрывает блок inside а это не то что нужно...
Up. После div id="main" есть другие div-блоки на странице которые нужно оставить, т.е. это не конец страницы.
  • Вопрос задан
  • 2072 просмотра
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Регуляркой разбирать html не очень удобно. Воспользуйтесь, например, PHP Simple HTML DOM Parser
include('simple_html_dom.php');
$html = str_get_html('<html><div id="main"><div id="inside">текст</div><div class="class">текст</div></div>');
$html->find('div#main', 0)->innertext = '';
$outText = $html->save();
Ответ написан
@IceJOKER
Web/Android developer
/(?<=<div\sid=\"main\">)(.*)(?=<\/div>)/is
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы