function email_check(emailStr){ emailPat=/^(.+)@(.+)$/ specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]" validChars="\[^\\s" + specialChars + "\]" quotedUser="(\"[^\"]*\")" ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/ atom=validChars + '+' word="(" + atom + "|" + quotedUser + ")" userPat=new RegExp("^" + word + "(\\." + word + ")*$") domainPat=new RegExp("^" + atom + "(\\." + atom +")*$") matchArray=emailStr.match(emailPat) if(matchArray==null){ return("你的电邮不正确"); } user=matchArray[1] domain=matchArray[2] if(user.match(userPat)==null){ return("The username doesn't seem to be valid."); } IPArray=domain.match(ipDomainPat) if(IPArray!=null){ for (i=1;i<=4;i++){ if (IPArray[i]>255){ return("Destination IP address is invalid!"); } } } domainArray=domain.match(domainPat) if(domainArray==null){ return("Your domain name doesn't seem to be valid."); } atomPat=new RegExp(atom,"g"); domArr=domain.match(atomPat); len=domArr.length; if(domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>4){ return("Your e-mail address must end in a 2–4 letter domain."); } if(len<2){ return("Your address is missing a hostname!"); } return ''; }