php开源嘛
首页 | English | MySql数据库 | Php编程 | 建站杂烩 | 系统服务器 | 资源共享 | 专题 | 才桀网 | 支持论坛
  当前位置:主页>Php编程>文章内容
PHP中常用email校验语句的解释。。。
来源:收集整理 作者:本站整理 发布时间:2008-05-27  

PHP中常用email校验语句的解释。。。

相信好好学过PHP的人都应该知道下面这段用于eamil校验的语句,但是真正能看懂的就不多了:


<?php
if (eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)) {
echo "您的 E-Mail 通过初步检查"; php开源嘛
}
?>


在这句话里,首先是应用了一个eregi函数,这个函数还算好理解。随便找本书,就能给你一段解释: php开源嘛
语法: int ereg(string pattern, string string, array [regs]);
返回值: 整数/数组
本函数以 pattern 的规则来解析比对字符串 string。
比对结果返回的值放在数组参数 regs 之中,regs[0] 内容就是原字符串 string、regs[1] 为第一个合乎规则的字符串、regs[2] 就是第二个合乎规则的字符串,余类推。若省略参数 regs,则只是单纯地比对,找到则返回值为 true。

而不太好理解的就是前面的这段正则表达式了:^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$

在这段正则表达式中,“+”表示前面的字符串连续出现一个或多个;“^”表示下一个字符串必须出现在开头,“$”表示前一个字符串必须出现在结尾;
“.”也就是“.”,这里“”是转义符;“{2,3}”表示前面的字符串可以连续出现2-3次。“()”表示包含的内容必须同时出现在目标对象中。“[_.0-9a-z-]”表示包含在“_”、“.”、“-”、从a到z范围内的字母、从0到9范围内的数字中的任意字符;
这样一来,这个正则表达式可以这样翻译:
“下面的字符必须在开头(^)”、“该字符必须包含在“_”、“.”、“-”、从a到z范围内的字母、从0到9范围内的数字中([_.0-9a-z-])”、“前面这个字符至少出现一次(+)”、@、“该字符串由一个包含在从a到z范围内的一个字母、从0到9范围内的数字中的字符开头,后面跟至少一个包含在“-”、从a到z范围内任何一个字母、从0到9范围内任何一个数字中的字符,最后以.结束(([0-9a-z][0-9a-z-]+.))”、“前面这个字符至少出现一次(+)”、“从a到z范围内的字母出现2-3次,并以它结束([a-z]{2,3}$)”
很繁杂是吧,对了,正因为这样,人们才使用正则表达式。


(阅读次数:
上一篇:What is TortoiseSVN? and Features...   下一篇:IT创业前要深思的八大问题{建站借鉴}
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·PHP生成验证码图片的源代码
·PHP会话对(Session)使用入门
·Php部分常见问题总结[bug]
·php正则表达式的快速学习方法
·高手传经:学习PHP重在坚持
·用 PHP 读取文件的正确方法
·PHP对文本数据库的基本操作方法
·用php生成静态页面的php函数
·讲解PHP+MySQL的分页显示示例
·完整且安全的PHP用户登录系统(转
·PHP面向对象技术OOP(全面讲解)、
·用PHP构建一个简易监视引擎
  相关文章
·PHP开发:ZendStudio调试功能使
·in_array() php中的数组函数……
·Php内部函数:strpos()与strrpos
·通用PHP动态生成静态HTML网页的
·PHP使用zlib扩展实现页面GZIP压
·PHP动态网站开发中常用的8个小技
·增加PHP的Session存储和处理能力
·PHP画一个可以更换文字的按纽
·PHP面向对象技术OOP(全面讲解)、
·面向对象OOP的5原则:接口隔离原
·依赖倒置原则(DIP) OOP面向对象.
·OOP面向对象:Liskov替换原则--L

关于我们 | 本站声明 | 友情连接 | 诚邀加盟 | 网站地图
版权Power by DedeCms   技术支持QQ =>> 罗江游鱼   Jacking  后台登陆
Copyright @ 2007 公司地址:柳州市东环路268号 邮编:545006 电话:15920389818 桂ICP备07006725号