PHP正则表达式替换函数eregi_replace不起作用

$s="abc465fds";$p="\d+";echo@eregi_replace($p,"a",$s);为什么替换不了??... $s = "abc465fds";
$p = "\d+";
echo @eregi_replace($p,"a",$s);
为什么替换不了??
展开
 我来答
CloudMonarch
2014-07-31 · TA获得超过233个赞
知道答主
回答量:127
采纳率:0%
帮助的人:158万
展开全部
在5.3版的以后的php,比如5.4, 5.5,已经废除了eregi_replace函数

去掉@,用preg_replace替代。
追问
在PHP中 所有正则表达式函数,在写正则表达式的时候,是不是都要用"/"来做分界
比如正则表达式“\d+”,在正则表达式函数中就要写成"/\d+/"
我试了下 至少preg_replace是这样的
那PHP中其他的正则表达式函数是不是都是如此呢?
追答
只有preg_xxxxx等函数需要这种分界符
preg_xxxxx等函数属于和Perl语言兼容的正则库。
也像perl那样有分界符
分界符可以用# / % ~多种
/\d+/
#\d+#
%\d+%
~\d+~
都是等价的

5.3之前的eregi_xxx函数属于与POSIX标准兼容的正则库,就不用这种分解符。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式