Home 教程 php正则递归匹配

php正则递归匹配

匹配成对的括号并且嵌套层次未知时,就要用到递归匹配了,以下是匹配php的class类的正则:

preg_match_all('/class [^\{]*(?<R>\{(?:[^{}]+|(?&R))*\})/',$content,$matches );

不过还是有意外情况,在类的字符串变量中包含{或}时,就会出错了。

更多使用方法请参考PHP官方说明文档:

https://www.php.net/manual/zh/regexp.reference.recursive.php

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Recent Posts