【发布时间】:2015-09-25 09:58:31
【问题描述】:
在 PSPad 中,我使用正则表达式来匹配 HTML 标签的内容。问题是这些标签可以包含其他标签(但不能包含它们自己)。
包装标签可以是任何标题(h1-6)或段落(p)。我已经设法创建工作正则表达式来匹配没有其他标签的内容。
<(h[1-9]|p)([^>]*)>([^<]*)</(h[1-9]|p)>
但这不匹配,例如
<p><a href="#someLink">aaa</a> something else...</p>
我知道我需要以某种方式否定整个小组到目前为止我已经尝试了这两个(没有成功):
<(h[1-9]|p)([^>]*)>(^(</(h[1-9]|p)))*</(h[1-9]|p)>
<(h[1-9]|p)([^>]*)>(!(</(h[1-9]|p)))*</(h[1-9]|p)>
那么如何正确否定整个组/“单词”?
我知道我需要从内部匹配中排除 </h1 到 </h6 或 </p,但我就是想不通。
非常感谢任何帮助/解决方案/方向/指导 - 谢谢! :-)
PS:PSPad 不做多行正则表达式(没关系,但需要考虑)
【问题讨论】:
标签: html regex tags nested pspad