如何使用正则表达式创建循环?

5 php regex

老实说,我认为我应该先问一下这个问题的语法帮助.

但是,如果你能理解我的意思,请用适当的编辑标题.

有没有办法制作可以分割这样的文字的模式.

{{START}}
    {{START}}
        {{START}}
            {{START}}
            {{END}}
        {{END}}
    {{END}}
{{END}}
Run Code Online (Sandbox Code Playgroud)

因此,{{START}}每个{{END}}都会从第一个内部到外部最后一个匹配{{END}}!

如果我不能只用正则表达式做到这一点.用PHP做这件事怎么样?

先谢谢你了.

tyl*_*erl 4

这超出了正则表达式的能力,它只能解析正则语法。您所描述的内容需要一个下推自动机(常规语言由常规自动机定义)。

您可以使用正则表达式来解析各个元素,但“深度”部分需要由具有内存概念的语言来处理(PHP 对此很合适)。

因此,在您的解决方案中,正则表达式将仅用于识别您的标签,而跟踪深度和确定 END 标签属于哪个元素的真正逻辑必须是您的程序本身。