1

我已经看到了一个不必为 PHP 5.3 重新使用 ereg 函数的解决方案: PHP 中 eregi() 的好替代品

它用if(!function_exists....

有没有可以以这种方式使用的功能ereg_replace

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

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

2 回答 2

12

请改用PCRE 函数 preg_replace

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

POSIX ERE(几乎)是 PCRE 的完整子集。因此,您可以(几乎)使用任何带有 PREG 实现的 POSIX ERE 正则表达式。有关更多详细信息,请参阅正则表达式风味比较

于 2009-09-15T18:29:46.380 回答
0

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

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

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

我希望快速修复,这是来自我认为来自IBM的一个示例。

于 2012-01-30T01:01:08.780 回答