课程
/后端开发
/PHP
/PHP进阶篇
不懂,不懂
2014-10-27
源自:PHP进阶篇 3-5
正在回答
<?php$subject = "my email is spark@imooc.com";//在这里补充代码,实现正则匹配,并输出邮箱地址$pattern = '/(\w+@\w+.\w+)/';preg_match($pattern, $subject, $matches);echo $matches[0];
?>
这是我写的,也许还不够优化。你参考参考吧。如果有更优化的,还请不吝赐教。
Mext
你的正则写的不够优化。
1、邮箱的@前面怎么会有空格呢?
2、\w已经匹配字母或数字或下划线了,完全没必要写的那么麻烦。
3、邮箱的后缀不是只有.com和.cn。比如说.net、.gov、.org等等数十个之多。
4、print_r()此时会将整个数组打印出来,建议使用前一小节echo $matchs[键值]的方法。而且echo同比于print、printf、print_r()速度都快。
学习中遇到困难是难免的,千万别放弃。遇到问题自己多琢磨琢磨,也可以去网上查查解决方案和资料,慢慢来,别着急,别灰心。
举报
轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序
1 回答if (!preg_match('/^[\w\.]+@\w+\.\w+$/i', $user['email'])) { die('邮箱不合法');
2 回答为啥说这个是不正确的呢?
4 回答学了这篇,用以下代码不能再我的MYSQL写入数据?请问大家
2 回答$p = '/表达式/';这句话是什么意思啊
1 回答子类和父类的方法名一样?