ereg_replace for PHP 5.3 +?

时间:2009-09-15 18:25:51

标签: php php-5.3 posix-ere

我已经看到了一个解决方案,无需重新使用PHP 5.3的ereg函数: Good alternative to eregi() in PHP

它使用if(!function_exists....

是否有一种可以这种方式用于ereg_replace的功能?

ereg_replace("<!--.*-->","",$str);

ereg_replace("[^a-z,A-Z]", "", $str);

2 个答案:

答案 0 :(得分:12)

改为使用PCRE function preg_replace

preg_replace("/<!--.*-->/", "", $str);
preg_replace("/[^a-z,A-Z]/", "", $str);

POSIX ERE(几乎)是PCRE的完整子集。因此,您可以使用(几乎)任何POSIX ERE正则表达式和PREG实现。有关详细信息,请参阅Regular Expression Flavor Comparison

答案 1 :(得分:0)

此行现在引发异常,我怀疑我的网站主机已升级它的PHP安装。

$vq = ereg_replace('[[:space:]]+', ' ', trim($vq));

如果我只是切换到preg_replace,它会抱怨尾随+

我希望快速解决问题,这是我从IBM开始的一个例子。