我使用正则表达式来选择自定义标签,但是其中一些标签具有相同名称的内部标签。
我的正则表达式正在变得混乱。
\[STORE.*?\]((.*?|\n)*)\[\/STORE\]
文字:
[STORE SMC, DODO]blah blah blah blah blah
[STORE SMC]blah[/STORE]
[STORE DODO]Blah[/STORE].
[/STORE]
...some text here I do not want selected...
[STORE SMC]blah[/STORE]
在另一次运行或同一次运行中选择标签?
答案 0 :(得分:2)
试试这个:
\[STORE[^\]]*]((.?|\n)*)\[\/STORE\]
应按预期工作:https://regex101.com/r/rkVKce/1
如果你想获得内部标签,你必须递归地应用这个正则表达式。我认为匹配这对于纯正则表达式来说太过分了。