0


我正在尝试使用 PHP 的 PCRE 从 div 中获取数据(基于他的 id)。目标是根据 id 获取 div 的内容,并使用递归/深度来获取其中的所有内容。这里的主要问题是在“主 div”中获取其他 div,因为正则表达式一旦获得</div>在初始之后找到的下一个 div 就会停止<div id="test">

我尝试了很多不同的方法来解决这个问题,但都没有奏效。在我看来,最好的解决方案是使用R参数(递归),但从未让它正常工作。

任何想法?

先谢谢了

4

1 回答 1

1

使用某种形式的 DOM 解析器会好得多——正则表达式确实不适合这个问题。如果您想要的只是基本的 HTML dom 解析,那么simplehtmldom之类的东西就很适合您。安装起来很简单(只包含一个 PHP 文件),使用起来也很简单(2-3 行就可以满足您的需求)。

include('simple-html-dom.php');

$dom = str_get_html($bunchofhtmlcode);
$testdiv = $dom->find('div#test',0); // 0 for the first occurrence
$testdiv_contents = $testdiv->innertext;
于 2009-09-03T23:59:16.633 回答