这是我用来点击用户点击提交按钮的电子邮件地址的代码,
/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(EmailID);
我想允许撇号(')到用户输入的电子邮件地址,上面的正则表达式会有什么修改?
答案 0 :(得分:1)
试试这个:
/^(\w|')+([\.-]?(\w|')+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/
它会在'@'
之前的任何地方允许撇号答案 1 :(得分:1)
您当前的正则表达式与以下电子邮件地址匹配:
但是不符合这个:
如果您只是在尝试验证包含一个撇号的电子邮件地址,请执行以下操作:
然后在第一个括号中添加一个quoi:
/^\w+(['.-]?\w+)@\w+([.-]?\w+)(.\w{2,3})+$/
但它仍然不会匹配很多电子邮件地址(一个带破折号和一个撇号,一个带有多个破折号[...])。
答案 2 :(得分:0)
使用正则表达式可能是最好的方法。这是一个例子(demo):
function validateEmailAddress(emailID) {
var emailRgx = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\
".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA
-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return emailRgx .test(emailID);
}