父和子正则表达式匹配

时间:2017-11-04 17:54:36

标签: html regex go

正则表达式对我来说一直是一个弱点,所以我需要一些帮助。

我基本上试图打开和关闭标签'在这些标签的内部允许使用相同的正则表达式。

因此标签可能如下所示:
<: tagname("[capture1]","[capture2]","[capture3]") :>[inner code]<: endtagname :>

所以带有子标签的人可能会像: <: tagname("[capture1]","[capture2]","[capture3]") :>This is a tag: <: tagname("[capture1]","[capture2]","[capture3]") :>[inner code]<: endtagname :> that was a tag<: endtagname :>

所以我尝试了一些正则表达式代码,但无法弄清楚如何让父标记不以子标记结束。

所以这是我尝试过的正则表达式之一:
<:[ ]?date[ ]?[(][ ]?'"['"],[ ]?'"['"],[ ]?'"['"][)][ ]?:>([\s\S\t\r]*)<:[ ]?enddate[ ]?:>

这适用于单级标签,但不适用于父/子标签。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

正如评论中所述,构建解析器。 在这里你有例子(下一个答案),还有一些资源: https://stackoverflow.com/a/8422952/6107031