那谁很靠谱3587144
2017-03-23 11:57
<?php
$subject = "my email is spark@imooc.com";
$p='/[\w\-]+@\w+\.\w+/';
preg_match($p,$subject,$matches);
echo $matches[0];
//在这里补充代码,实现正则匹配,并输出邮箱地址
为什么不会匹配到spark前面的字符?
正则表达式的匹配过程:根据正则表达式$p,
从$subject的第一个字符m开始匹配,my之后遇到空格不匹配;
从第二个字符y开始,之后遇到空格不匹配;
从第三个字符开始,空格不匹配;依次类推,从spark到结束,符合正则表达式$p,所以返回邮箱地址
\s是要匹配空白 ,\S才是匹配非空白
PHP进阶篇
181836 学习 · 2577 问题
相似问题