无法使REGEX工作((?=(< \ /))(。*?)(?:\>))

时间:2016-07-13 18:09:23

标签: regex

我有以下正则表达式,它为我找到了部分解决方案:

((?=(<\/))(.*?)(?:\>))

鉴于以下行:

</EventSubType><OrgUnitNm>###</OrgUnitNm></test:CommonAttributes><ProductArrangementBasic><ProductId>####</ProductId></part:Asking>

正则表达式会给我:

</EventSubType></OrgUnitNm></test:CommonAttributes></ProductId></part:Asking>

我只想:

</test:   </part:

任何帮助都会很棒。

谢谢。

1 个答案:

答案 0 :(得分:1)

注意:如果要解析HTML,最好使用专用库。

我怀疑您正在使用带有PCRE /U标记的正则表达式,例如/((?=(<\/))(.*?)(?:\>))/U

如果您只想获得</test:</part:,可以使用更简单的正则表达式:

/<\/\w+:/

请参阅regex demo

<强>详情:

  • < - 文字<
  • \/ - 文字/
  • \w+ - [a-zA-Z0-9_]范围内的一个或多个字符
  • : - 文字: