验证Email的正则表达式,请指教!
<SCRIPT LANGUAGE="JavaScript">
function window.onload(){ document.all.mail.focus(); }
function checkemail(str){
// +表示,至少一次 *表是任意次 .表示任意字符
var l=/^([A-Za-z])+([A-Za-z0-9]|[-]|[_]|[.])*([A-Za-z0-9])+@([-A-Za-z0-9])+\..+$/ ;
// 开始 (字母开头) ( 允许的字符 ) (结尾字符 ) @ ( 允许的字符 )(.后至少一个任意字符)
return (l.test(str))
}
</SCRIPT>
<form onSubmit="alert(checkemail(document.all.mail.value));">
<input type=text name=mail>
</form>
<pre>
正则表达式:
var filter=/^([a-z]|[A-Za-z0-9]|[-]|[_][.])([A-Za-z0-9])+@([A-Za-z0-9]|[-])+\..+$/ ;
实现以下判断:
一、邮件帐号部分:
1) 以英文字母开头
(非法如: _dunkee)
2) 只能由英文小写字母(a-z), 阿拉伯数字(0-9), 下划线(_), 圆点(.) 连字符(-) 构成
(非法如: dun kee)
3) 结尾只能是字母,数字,既不能以 下划线(_), 圆点(.) 连字符(-) 结尾
(非法如: dunkee-)
二、域名(domain)部分
4) 只能由字母数字连字符 构成
(非法如: dun=kee)
三、之后部分
5) 域名后接圆点(.)
6) 之后至少有一个任意字符串
(非法如: dunkee@263.)
弄了半天,头都大了,请诸位看看,不知道有没有什么不妥,谢谢!!!!