正则表达式匹配HTML块

时间:2011-04-20 07:53:41

标签: php regex preg-match-all

首先,我将向您展示我正在使用的代码示例:

<div class="entry">
        <p>Any HTML content could go here!</p>
      </div>
    </div><!--/post -->

通常我会使用如下所示的正则表达式规则来查找前缀和后缀并抓住其中的所有内容:

(?<=<div class="entry">).*(?=</div><!--/post -->)

然而,这似乎并没有起作用,因为它似乎在以下部分之间拉动空白区域而不是HTML内容本身:

<div class="entry">
        <p>

任何帮助/建议都会非常感激,因为我现在已经用这个好几个小时抨击我了。

非常感谢提前。

2 个答案:

答案 0 :(得分:7)

Don't use Regex to parse HTML。你需要一个Xml Parser或类似的东西。

搜索Stackoverflow以获得最佳效果,例如:Robust and Mature HTML Parser for PHP

答案 1 :(得分:-1)

您还可以考虑使用php strip_tags()