js和php邮箱地址验证的实现方法


Posted in PHP onJanuary 09, 2014

邮箱地址验证有很多方法。在浏览器端,js邮箱验证可以通过正则表达式检测。

比如:

function isEmail(email) {
    return /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))$/i.test(email);
}

调用很简单:

if (isEmail('youremail@yourdomain.com')){ console.log('This is email is valid'); }

如果是进行服务器端验证。像php,则最简单的莫过于:

/*
 * 邮箱地址合法性验证
 */function isEmail($mail_address) {
    return filter_var($mail_address, FILTER_VALIDATE_EMAIL);
}

但是这个件事也可以整得复杂。

像这位。他建立起一整套的邮箱地址验证网站体系。估计很少人这么干。

说实话,不得不佩服。

PHP 相关文章推荐
PHP制作图型计数器的例子
Oct 09 PHP
php中处理模拟rewrite 效果
Dec 09 PHP
php实现首页链接查询 友情链接检查的代码
Jan 05 PHP
php正则过滤html标签、空格、换行符的代码(附说明)
Oct 25 PHP
php stream_get_meta_data返回值
Sep 29 PHP
Laravel 5框架学习之用户认证
Apr 09 PHP
PHP实现QQ登录实例代码
Jan 14 PHP
[原创]php常用字符串输出方法分析(echo,print,printf及sprintf)
Jul 09 PHP
thinkPHP多语言切换设置方法详解
Nov 11 PHP
PHP中的访问修饰符简单比较
Feb 02 PHP
PHP大文件切割上传功能实例分析
Jul 01 PHP
PHP 模拟登陆功能实例详解
Sep 10 PHP
php检测用户是否用手机(Mobile)访问网站的类
Jan 09 #PHP
php获取文件内容最后一行示例
Jan 09 #PHP
php权重计算方法代码分享
Jan 09 #PHP
php实现分页工具类分享
Jan 09 #PHP
codeigniter框架批量插入数据
Jan 09 #PHP
eaglephp使用微信api接口开发微信框架
Jan 09 #PHP
百度站点地图(百度sitemap)生成方法分享
Jan 09 #PHP
You might like
第八节--访问方式
2006/11/16 PHP
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
UTF-8正则表达式如何匹配汉字
2015/08/03 PHP
javascript的parseFloat()方法精度问题探讨
2013/11/26 Javascript
js调试工具Console命令详解
2014/10/21 Javascript
javascript删除元素节点removeChild()用法实例
2015/05/26 Javascript
Bootstrap和Angularjs配合自制弹框的实例代码
2016/08/24 Javascript
浅谈Web页面向后台提交数据的方式和选择
2016/09/23 Javascript
vuejs实现本地数据的筛选分页功能思路详解
2017/11/15 Javascript
react-native封装插件swiper的使用方法
2018/03/20 Javascript
jQuery 筛选器简单操作示例
2019/10/02 jQuery
Vue3项目打包后部署到服务器 请求不到后台接口解决方法
2020/02/06 Javascript
vue全屏事件开发详解
2020/06/17 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
编写Python脚本批量下载DesktopNexus壁纸的教程
2015/05/06 Python
Python彩色化Linux的命令行终端界面的代码实例分享
2016/07/02 Python
python实时分析日志的一个小脚本分享
2017/05/07 Python
酷! 程序员用Python带你玩转冲顶大会
2018/01/17 Python
python pandas实现excel转为html格式的方法
2018/10/23 Python
python获取引用对象的个数方式
2019/12/20 Python
Python Map 函数的使用
2020/08/28 Python
Python性能测试工具Locust安装及使用
2020/12/01 Python
CSS3悬停效果案例应用
2012/11/21 HTML / CSS
用CSS3实现背景渐变的方法
2015/07/14 HTML / CSS
AmazeUI 面板的实现示例
2020/08/17 HTML / CSS
Ruby中的保护方法和私有方法与一般面向对象程序设计语言的一样吗
2013/05/01 面试题
军训 自我鉴定
2014/02/03 职场文书
领导干部作风建设总结
2014/10/23 职场文书
2014年初三班主任工作总结
2014/12/05 职场文书
道德模范事迹材料
2014/12/20 职场文书
同意报考公务员证明
2015/06/17 职场文书
浅谈由position属性引申的css进阶讨论
2021/05/25 HTML / CSS
SpringBoot2 参数管理实践之入参出参与校验的方式
2021/06/16 Java/Android
python geopandas读取、创建shapefile文件的方法
2021/06/29 Python
Nginx速查手册及常见问题
2022/04/07 Servers