PHP正则表达式ereg的问题

$wenben="hello,world";echoeregi('[a-z]*',$wenben,$b);这一段中,不是匹配了[a-z]的字符吗,不是应该可以匹配到hel... $wenben="hello,world";
echo eregi('[a-z]*',$wenben,$b);

这一段中,不是匹配了[a-z]的字符吗,不是应该可以匹配到hello 还有world吗,为何输出的时候只有5
难道是因为中间的逗号?

但是如果用ereg_replace('[a-z]*',"TiHuan",$wenben),则可以把hello 和world都替换掉,这是两个函数的特性吗?
展开
 我来答
互联网前世今生

推荐于2016-03-19 · 科技领域创作者
个人认证用户
互联网前世今生
采纳数:314 获赞数:348

向TA提问 私信TA
展开全部

eregi 和 ereg_replace 这两个函数到5.3以后就被废弃了,可以使用preg_match, preg_replace进行替换,举个例子:

<?php
$wenben="hello,world";
print_r(preg_match('/[a-z]*/i', $wenben));
$result = preg_replace('/[a-z]*/i',"TiHuan",$wenben);
var_dump($result);

preg_replace,就是替换匹配的字符串,并返回替换后的结果。


preg_match, 就是匹配字符串,返回匹配的结果,为0或者1,当第一次匹配成功,就不继续匹配了。


这些文件函数,你都可以参考php 官方手册:


http://cn2.php.net/manual/zh/function.preg-replace.php

追问
哦好的,我看的书是PHP和MYSQL web 开发第四版,里面还是照旧版的讲,刚刚一查才知道要被废弃的事
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式