Javascript 特定域的电子邮件验证

Javascript 特定域的电子邮件验证,javascript,php,validation,Javascript,Php,Validation,我需要电子邮件验证方面的帮助,此验证代码以特定格式显示所有电子邮件,如,test@test.gov.au, test@something.ac.au我希望它的格式是允许的test@something.au 注意:这里我只允许进入5个域名,分别是gov.au、edu.au、govt.nz、ac.au和csiro.au 我的代码如下 JS: 函数emailTldValidationtlds{ $.validator.addMethodemailTld,函数值,元素{ 如果值为.search@!=-1

我需要电子邮件验证方面的帮助,此验证代码以特定格式显示所有电子邮件,如,test@test.gov.au, test@something.ac.au我希望它的格式是允许的test@something.au

注意:这里我只允许进入5个域名,分别是gov.au、edu.au、govt.nz、ac.au和csiro.au

我的代码如下

JS:

函数emailTldValidationtlds{ $.validator.addMethodemailTld,函数值,元素{ 如果值为.search@!=-1{ return/+.+\.gov\.au | edu\.au | ac\.nz | csiro\.au | govt\.nz$/.testvalue; //return/+.+\.csiro\.au | gov | gov\.us$/.testvalue; } 返回false; },请输入有效的tld,如+tld; $.validator.addClassRules{ 字符串输入:{ emailTld:是的 } }; } 下面的代码在function.php中验证

函数validateEmail$email{ //在此处从服务器端验证电子邮件 如果过滤变量为$email,则过滤验证email{ //验证tld $validTlds=str\u replace.,\,有效电子邮件\u tld; $validTlds=\…str\u replace,,\,$validTlds; $emailArr=explode@,$email; $emailTld=$emailArr[1]; 如果预匹配“/^[-a-z0-9]+\.[a-z][a-z].$validTlds.\z/”,则strtolower$emailTld{ //在这里检查主域 $exValidTlds=explode,,有效的\u电子邮件\u tld; $exValidTlds=array_map'trim',$exValidTlds; foreach$exValidTlds为$tld{//如果存在,则 ifstrstr$emailTld,…$tld{ 如果$tld==strrchr$emailTld,$tld{ 返回true; } } } 返回false; } } 函数validateEmail$email{ //在此处从服务器端验证电子邮件 如果过滤变量为$email,则过滤验证email{ //验证tld $validTlds=str\u replace.,\,有效电子邮件\u tld; $validTlds=\…str\u replace,,\,$validTlds; //$validTlds=str|u replace,,| \,$validTlds; $emailArr=explode@,$email; $emailTld=$emailArr[1]; 如果$emailTld=='csiro.au' { //在这里检查主域 返回true; } 其他预匹配'/^[-a-z0-9]+'.$validTlds'.\z/',strtolower$emailTld{ //在这里检查主域 $exValidTlds=explode,,有效的\u电子邮件\u tld; $exValidTlds=array_map'trim',$exValidTlds; foreach$exValidTlds为$tld{//如果存在,则 ifstrstr$emailTld,…$tld{ 如果$tld==strrchr$emailTld,$tld{ 返回true; } } } 返回false; } } 返回false;
}谢谢@dclowd9901:但它对我的代码不起作用……因为有一些特定的约束条件something@smthng.gov.au或something@smthing.ac.au或something@smthing.govt.nz或something@smthing.edu.au或something@csiro.au电子邮件格式将只允许。其他所有工作正常,但它正在显示something@csiro.au作为无效的电子邮件id。我也需要允许。然后是你的代码,我不能帮你,因为一切看起来都很好。这里有一个jsbin:问题不在于regexp,而在于其他。谢谢@dclowd9901…使用此验证代码解决了问题