检查Email地址的比较完善的正则表达式函数

2000-08-06 10:35:42  作者
下面的函数可以对Email地址格式进行检查,只有形如
abc@abc.abc,abc@abc.abc.abc和abc@abc.abc.abc.abc状的串才能通过检查,
如下面这些非法地址都通不过
@abc@163.net,abc@163..net,abc@163.net.,abc@163@net等等都能剔除出来。

邮件地址就这几种格式吧?比如
swuse@yeah.net,liaojiayuan@btamail.net.cn,abc@public.yj.gd.cn
还有没有更长的?

%26lt;script language=%26quot;JavaScript1.2%26quot;%26gt;
function checkmail(mail)
var strr;
re=/(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;
re.exec(mail);
if (RegExp.$3!=%26quot;%26quot;%26amp;%26amp;RegExp.$3!=%26quot;.%26quot;%26amp;%26amp;RegExp.$2!=%26quot;.%26quot;) strr=RegExp.$1+RegExp.$2+RegExp.$3
else
if (RegExp.$2!=%26quot;%26quot;%26amp;%26amp;RegExp.$2!=%26quot;.%26quot;) strr=RegExp.$1+RegExp.$2
elsestrr=RegExp.$1
if (strr!=mail) {alert(%26quot;请填写正确的邮件地址;return false}
return true;
}
%26lt;/script%26gt;