字符串preg_match_all的最大长度可以匹配并获取?

时间:2013-08-18 06:43:08

标签: php regex

我正在尝试使用preg_match_all()解析一些网页,其中一些网页的大小相当于几个MB。其中一个正则表达式匹配一些文本字符串,这些字符串非常大,以至于它们似乎无法匹配并获取它们。它只返回一个空字符串。

当我手动选择它并将其保存为.txt文件时,其中一个字符串是1.32MB或1,393,557字节。

当字符串短得多,只有几万个字节时,该正则表达式成功匹配并获取它。

所以我的问题是,因为我发现字符串的限制/最大长度preg_match_all()可以匹配,它是什么以及如何将其设置得更大?

1 个答案:

答案 0 :(得分:6)

在您的脚本或php.ini文件中将ini_set('pcre.backtrack_limit', '1048576');设置为您想要的全局用途。 (例如1mb)

感谢:http://www.karlrixon.co.uk/writing/php-regular-expression-fails-silently-on-long-strings/