我是否允许在PHP中使用正则表达式中的非贪婪.*?
匹配次数的已知限制?
我的干草堆大约有20万个字符,我必须找出75个数字的顺序是否正确。我知道有更好的方法可以在不使用preg_match的情况下做到这一点,但为了这个问题,请留下来。
我的第一个正则表达式看起来像@123.*?456.*?789.*?101112@
等,有75个数字 - 它失败了。
第二种方法:在前30个数字之后拆分,所以我们有两个正则表达式,如上面的那个,第一个有30个,第二个有45个。第二个失败了。
第三种方法:在前40个数字后分割(因此有40和35个数字)。两者都成功了。
我已经确定第39和40号是有序的,所以我的猜测是,preg_match有一些限制。
答案 0 :(得分:4)
通过增加此值来检查
ini_set("pcre.backtrack_limit", "1000000");