【发布时间】:2015-01-22 16:07:09
【问题描述】:
标题可能令人困惑,但我不知道如何正确表达。
所以这是我的目标。我有这个字符串(或类似的东西):
[some_element]Random string chars [some_element]Ramdon[/some_element] some more random chars[/some_element]
(你们中的一些人可能会认识到这些是 WordPress 短代码,但这种方法在其他地方对我来说仍然有用。)
我需要做的是匹配父“元素”。我通常的做法可能是这样的:
\[(\w+)].*?\[\/\1]
问题是,这在上面的例子中不起作用,因为它的“子元素”有一个相同的结束“标签”。
我怎样才能让这个正则表达式工作,不管有多少嵌套的孩子存在(字面意思是无限数量的重复嵌套孩子)?
【问题讨论】:
-
这是一个很好的例子,说明正则表达式不是适合这项工作的工具。
-
您使用什么语言/工具进行正则表达式?
-
@Biffen ...好的,那么什么是正确的工具?
-
@anubhava PHP 是语言
-
@Biffen 然后做一些富有成效的事情并告诉 OP 什么是正确的工具。
标签: php regex duplicates