在 PHP 中,我有带有嵌套括号的字符串:
bar[foo[test[abc][def]]bar]foo
我需要一个与内部括号对匹配的正则表达式first,所以顺序是preg_match_all
发现匹配的括号对应该是:
[abc]
[def]
[test[abc][def]]
[foo[test[abc][def]]bar]
所有文本可能有所不同。
这是否有可能preg_match_all
?
这对于正则表达式来说是不可能的。无论您的正则表达式有多复杂,它总是首先返回最左边的匹配项。
充其量,您必须使用多个正则表达式,但即使这样您也会遇到麻烦,因为正则表达式无法真正计算匹配的括号。最好的选择是以其他方式解析该字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)