当前位置:编程问答 > php >

php 正则 匹配 多后缀 邮箱 问题

问题:如下代码可以匹配 的邮箱有:雅虎,新浪,网易。。等等,国内邮箱。但是 匹配 复杂一点的 onmyway007@mail.goo.ne.jp 这样的邮箱就有问题了。大家谁帮着修改一下,修改之后能匹配 国内邮箱 和上面的 多后缀邮箱。

function getEmail($str)
{
$pattern = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i";
preg_match_all($pattern,$str,$emailArr);
return $emailArr[0];
}

 
答案:function getEmail($str)
{

$pattern = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)(\.[a-z]*)/i";
 return preg_match_all($pattern,$str,$emailArr);

}
print_r(getEmail('sdasdsadsd@xx'));

四月底的时候邮箱里收到一封来自虚拟主机提供商的邮件,说我的流量超标,并且网站已经被挂起。我百思不得其解,每月15GB的流量,对于一个非下载网站来说应该已经是相当充足的了。于是到后台检查,发现大量的来自百度、QQ旋窝的请求,而目标都是我附件目录下的MP3文件。赶快连上网站的ftp,发现网站中的robots.txt文件存在,而且也的确屏蔽了附件目录,但依然被百度收录了。无奈,只好对附件目录进行反盗链处理,采用的是Apache Rewrire在需要反盗链的文件夹下建立一个文件.htaccess注:这个文件在Windows是无法正常建立的,可以先改名为htaccess上传到服务器后再加上前面的那个点。Cuteftp想要看到这类文件,需要执行以下步骤:选择“站点管理器”标签右击需要修改的站点名,选择“属性”选择“动作”标签,单击“过滤”勾选“启动过滤”勾选“启动服务器端过滤”参数一栏里填入“-a”即可.htaccess文件内容如下:RewriteEngine onRewriteCond % !peuol.com [NC]RewriteRule .*\.(mp3|wma|rar)$ [R,NC,L]RewriteEngine on启用重写规则RewriteCond % !peuol.com [NC]来源不是peuol.com的请求将受到下面的重写规则影响RewriteRule .*\.(mp3|wma|rar)$ [R,NC,L]把后缀为mp3、wma的文件重定向到 页面一些常用参数:RewriteCond下:[NC] 不分字母大小写[OR] 用于连接下一条规则RewriteRule下:[R] 强制重定向,[R=code] code默认为302[F] 禁用URL,返回HTTP 403 错误[L] 这是最后一条规则,之后内容无用效果图:红线下是开启防盗链后的流量这个只是apache rewrite mod 的一些简单应用,更详细的rewrite教程可以参照以下网站:关于正则表达式,可以参考:本文部分内容来自:只供参考~


如果帮助到您,请记得采纳为满意答案哈,谢谢!祝您生活愉快! vae.la


上一个:php中 怎么编写过滤词程序
下一个:请问PHP 如何抓某页面的链接

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,