关于JS一些验证邮箱的一些问题
if (type == "Email") { var strText = $("#EmailSaveText").val(); //strReg = /^\w+((-\w+)|(\.\w+))*\@{1}\w+\.{1}\w{2,4}(\.{0,1}\w{2}){0,1}/ig; //strReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/; //strReg = "^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}[0-9a-zA-Z]+[\.]?[0-9a-zA-Z]+$" strReg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; //var r = strText.search(strReg); if (!strReg.test(strText)) { $("#" + type + "ErrorMsg").removeClass("myhidedisplay"); $("#" + type + "ErrorMsg").text(" * 邮箱格式错误 *"); $("#" + type + "ErrorMsg").addClass("errorMsg"); } }
尝试不同的正则表达式,最终还是可以了,没怎么接触正则表达式。
下面是引用别人的一些文章:
1 function test() 2 { 3 var temp = document.getElementById("text1"); 4 //对电子邮件的验证 5 var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; 6 if(!myreg.test(temp.value)) 7 { 8 alert('提示\n\n请输入有效的E_mail!'); 9 myreg.focus(); 10 return false; 11 } 12 } 13 //由于方法相同,一下只写出相关的正则表达式 14 //对于手机号码的验证(提供了两种方法) 15 var mobile=/^((13[0-9]{1})|159|153)+\d{8}$/; 16 var mobile1=/^(13+\d{9})|(159+\d{8})|(153+\d{8})$/; 17 //对于区号的验证 18 var phoneAreaNum = /^\d{3,4}$/; 19 //对于电话号码的验证 20 var phone =/^\d{7,8}$/;
一些需要注意的地方
1. /^$/ 这个是个通用的格式。 ^ 匹配输入字符串的开始位置;$匹配输入字符串的结束位置 2. 里面输入需要实现的功能。 * 匹配前面的子表达式零次或多次; + 匹配前面的子表达式一次或多次; ?匹配前面的子表达式零次或一次; \d 匹配一个数字字符,等价于[0-9]
生命不息,学习不止