-3

我有一个像“firstname lastname(email)”这样的字符串格式,我想使用 jQuery 根据这种格式验证输入的值。怎么可能?我已经尝试了很多东西,但那些都不能正常工作。

4

2 回答 2

1

试试这个正则表达式

演示

/^([a-zA-Z]+ )+([a-zA-Z])+([\(])+([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+(\))+$/

$.validator.addMethod("username_email",function(value,element){
   return this.optional(element) || /^([a-zA-Z]+ )+([a-zA-Z])+([\(])+([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+(\))+$/i.test(value); 
},"enter firstname lastname(email)");

使用正则表达式进行 Jquery 验证

于 2012-11-06T05:39:44.537 回答
0

没有办法准确、简洁地验证电子邮件。一个绝对正确的正则表达式会很长(而且大多数电子邮件服务器不支持 RFC 无论如何定义的所有电子邮件地址格式)。您可以假设电子邮件是一个有效字符序列,然后是一个 at 符号,然后是一个有效字符序列。如果电子邮件的正则表达式是/[\w.+-]+\@[\w.]+/,那么完整的正则表达式(如果你想禁止中间名)是

/[a-zA-Z]+ [a-zA-Z]+\([\w.+-]+\@[\w.]+\)/
于 2012-11-06T05:41:43.570 回答