示例:https://regex101.com/r/nHiyU3/1
CODE:
<div id="content">
<div>
<div class="col-image"></div> <!-- STOPS HERE -->
THIS CONTENT HERE DOES NOT GET CAPTURED
</div>
</div>
REGEX:
/<div id=[\'|"]content[\'|"][^>]*>(.*)<\/div>/sUi
所以它停在我已添加说明的地方
有什么理由?已经关注了SO的其他主题,但却无法抓住它。
所以我知道如何在多行中完成它,它在多行中找到匹配的标记
答案 0 :(得分:1)
正如评论中所提到的,使用DOMDocument更容易实现这一点。例如:
<?php
$html = '<div id="content"><div><div class="col-image"></div> <!--
STOPS HERE -->THIS CONTENT HERE DOES NOT GET CAPTURED</div></div>';
$domDocument = DOMDocument::loadHTML($html);
$divList = $domDocument->getElementsByTagName('div');
foreach ($divList as $div) {
var_dump($div);
}