php email邮箱正则


Posted in PHP onOctober 08, 2008

1.验证email:

< ?php 
 if (ereg("/^[a-z]([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i; ",$email)){ 
echo “Your email address is correct!”;} 
 else{ 
echo "Please try again!"; 
} 
?>

$str = '';
$isMatched = preg_match('/^\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}$/', $str, $matches);
var_dump($isMatched, $matches);

匹配Email邮箱格式的正则表达式:

/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;

解析:
/内容/i 构成一个不区分大小写的正则表达式;
^ 匹配开始
$ 匹配结束
[a-z] E-Mail前缀必需是一个英文字母开头

([a-z0-9]*[-_]?[a-z0-9]+)* 和_a_2、aaa11、_1_a_2匹配,和a1_、aaff_33a_、a__aa不匹配,如果是空字符,也是匹配的,*表示0个或者多个。
*表示0个或多个前面的字符.
[a-z0-9]* 匹配0个或多个英文字母或者数字
[-_]? 匹配0个或1“-”,因为“-”不能连续出现
[a-z0-9]+ 匹配1个或多个英文字母或者数字,因为“-”不能做为结尾

@ 必需有个有@
([a-z0-9]*[-_]?[a-z0-9]+)+ 见上面([a-z0-9]*[-_]?[a-z0-9]+)*解释,但是不能为空,+表示一个或者为多个。
[\.] 将特殊字符(.)当成普通字符
[a-z]{2,3} 匹配2个至3个英文字母,一般为com或者net等.
([\.][a-z]{2})? 匹配0个或者1个[\.][a-z]{2}(比如.cn等) 不知道一般.com.cn最后部份是不是都是两位的,如果不是请修改{2}为{起始字数,结束字数}

这个用于匹配邮箱的正则表达式,还是比较强的,功能强大,覆盖广泛,有用到的朋友收藏下吧。

国际域名格式如下:

域名由各国文字的特定字符集、英文字母、数字及“-”(即连字符或减号)任意组合而成, 但开头及结尾均不能含有“-”,“-”不能连续出现 。 域名中字母不分大小写。域名最长可达60个字节(包括后缀.com、.net、.org等)。
/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i;
/内容/i 构成一个不区分大小写的正则表达式;
^ 匹配开始
$ 匹配结束
[a-z] E-Mail前缀必需是一个英文字母开头
([a-z0-9]*[-_]?[a-z0-9]+)* 和_a_2、aaa11、_1_a_2匹配,和a1_、aaff_33a_、a__aa不匹配,如果是空字符,也是匹配的,*表示0个或者多个。
*表示0个或多个前面的字符.
[a-z0-9]* 匹配0个或多个英文字母或者数字
[-_]? 匹配0个或1“-”,因为“-”不能连续出现
[a-z0-9]+ 匹配1个或多个英文字母或者数字,因为“-”不能做为结尾
@ 必需有个有@
([a-z0-9]*[-_]?[a-z0-9]+)+ 见上面([a-z0-9]*[-_]?[a-z0-9]+)*解释,但是不能为空,+表示一个或者为多个。
[\.] 将特殊字符(.)当成普通字符
[a-z]{2,3} 匹配2个至3个英文字母,一般为com或者net等.
([\.][a-z]{2})? 匹配0个或者1个[\.][a-z]{2}(比如.cn等) 我不知道一般.com.cn最后部份是不是都是两位的,如果不是请修改{2}为{起始字数,结束字数}
完美E-Mail正则表达式,附详细讲解,请大家帮忙测试一下! 2.抽取字符串中的email:

<?php 
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]; 
} 
$emailstr = "9999@qq.com.cn俺不是米vi地方就开iid邮件列表:fuyongjie@163.com 和hh@qq.com;.;;,fuyongjie.100@yahoo.com,fu-1999@sina.com"; 
$emailArr = getEmail($emailstr); 
echo "<pre>"; 
print_r($emailArr); 
echo "</pre>"; 
?>

打印如下:
Array
(
[0] => 9999@qq.com.cn
[1] => fuyongjie@163.com
[2] => hh@qq.com
[3] => fuyongjie.100@yahoo.com
[4] => fu-1999@sina.com
)
3.比较:第2里的正则里没有了第1的^和$;

PHP 相关文章推荐
基于php缓存的详解
May 15 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
Jun 24 PHP
Codeigniter操作数据库表的优化写法总结
Jun 12 PHP
php读取flash文件高宽帧数背景颜色的方法
Jan 06 PHP
Symfony数据校验方法实例分析
Jan 26 PHP
php计算两个文件相对路径的方法
Mar 14 PHP
修复ShopNC使用QQ 互联时提示100010 错误
Nov 08 PHP
thinkphp整合微信支付代码分享
Nov 24 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
Nov 16 PHP
微信公众平台开发教程①获取用户Openid及个人信息图文详解
Apr 10 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
Mar 27 PHP
PHP7 参数处理机制修改
Mar 09 PHP
php获取地址栏信息的代码
Oct 08 #PHP
Cannot modify header information错误解决方法
Oct 08 #PHP
不用mod_rewrite直接用php实现伪静态化页面代码
Oct 04 #PHP
php 友好URL的实现(吐血推荐)
Oct 04 #PHP
PHP注释实例技巧
Oct 03 #PHP
使用eAccelerator加密PHP程序
Oct 03 #PHP
一些使用频率比较高的php函数
Oct 03 #PHP
You might like
php实现文件下载实例分享
2014/06/02 PHP
简单说说PHP优化那些事(经验分享)
2014/11/27 PHP
主流PHP框架的优缺点对比分析
2014/12/25 PHP
CodeIgniter配置之database.php用法实例分析
2016/01/20 PHP
php实现session共享的实例方法
2019/09/19 PHP
JavaScript 克隆数组最简单的方法
2009/02/12 Javascript
JS读取XML文件示例代码
2013/11/15 Javascript
jQuery插件开发汇总
2016/05/15 Javascript
nodejs 终端打印进度条实例代码
2017/04/22 NodeJs
vue实现图片滚动的示例代码(类似走马灯效果)
2018/03/03 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
vue+axios实现文件下载及vue中使用axios的实例
2018/09/21 Javascript
JS实现电脑虚拟键盘打字测试
2020/06/24 Javascript
[02:02]DOTA2英雄基础教程 斯拉达
2013/12/11 DOTA
[46:25]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第二局
2016/03/05 DOTA
python得到单词模式的示例
2018/10/15 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
2019/03/30 Python
Python3.6中Twisted模块安装的问题与解决
2019/04/15 Python
python+Django+pycharm+mysql 搭建首个web项目详解
2019/11/29 Python
python 6.7 编写printTable()函数表格打印(完整代码)
2020/03/25 Python
Python如何读写字节数据
2020/08/05 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
html5 拖拽上传图片实例演示
2013/04/01 HTML / CSS
美国时尚大码女装购物网站:Avenue
2019/05/24 全球购物
《蚕姑娘》教学反思
2014/04/15 职场文书
党日活动总结
2014/05/07 职场文书
缅怀革命先烈演讲稿
2014/05/14 职场文书
考试作弊万能检讨书
2014/10/19 职场文书
门卫岗位职责
2015/02/09 职场文书
追悼会悼词大全
2015/06/23 职场文书
大学生干部培训心得体会
2016/01/06 职场文书
如何用python插入独创性声明
2021/03/31 Python
详解Python自动化之文件自动化处理
2021/06/21 Python
Python机器学习实战之k-近邻算法的实现
2021/11/27 Python
GTX1660显卡搭配显示器推荐
2022/04/19 数码科技
Go语言测试库testify使用学习
2022/07/23 Golang