PHP ereg vs. preg
我注意到在PHP正则表达式库中有一个选择,可以在erg和preg之间进行选择。有什么区别?一个比另一个快吗,如果是这样,为什么不弃用较慢的一个?
是否有任何情况下使用一个比另一个更好?
我注意到在PHP正则表达式库中有一个选择,可以在erg和preg之间进行选择。有什么区别?一个比另一个快吗,如果是这样,为什么不弃用较慢的一个?
是否有任何情况下使用一个比另一个更好?
访问 php.net/ereg 显示以下内容:
警告
此函数自 PHP 5.3.0 起已弃用,自 PHP 6.0.0 起已被删除。强烈建议不要依赖此功能。
在页面的下方稍远一点,我们读到这个:
注意:preg_match()使用与Perl兼容的正则表达式语法,通常是erg()的更快替代方案。
注意我的强调。
preg 是 Perl 兼容的正则表达式库
ereg 是 POSIX complient regex 库
它们的语法略有不同,在某些情况下,preg稍微快一些。ereg已被弃用(并且在php6中被删除),所以我不建议使用它。