使用正则表达式查找段落标记中嵌入的无序列表标记

时间:2011-08-09 20:46:04

标签: regex

我需要一个正则表达式来查找<ul>代码中的<p>代码。这将是与我正在寻找的文本匹配的文本示例:

blah
<p style="font-size: 10pt;">blah</p>
<p style="font-size: 10pt;"><ul><li>blah</li></ul></p>
blah

1 个答案:

答案 0 :(得分:0)

虽然我认为使用一些HTML / XML解析器来实现这一点真的更好,但你可以尝试在正则表达式中使用负向前瞻,所以在你的情况下你可以使用

(<p[^>]*>(?:(?!</p>).)*)(<ul[^>]*>.*</ul>)

但这只有在<ul>之间只有一个<p></p>时才有效,如果还有更多的正则表达式会变得更复杂,并且在某些方面会出现'{1}} d需要使用函数作为替换。