Javascript 验证从Outlook复制的电子邮件地址

Javascript 验证从Outlook复制的电子邮件地址,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,希望验证用户可以输入任何类型电子邮件的电子邮件字段。 当用户从Outlook复制粘贴的电子邮件地址时,使用正则表达式进行的验证检查失败。从Outlook复制的电子邮件地址看起来与以前不同 M, Karan <karan.m@outlook.com> M,Karan 我的输入看起来像m。karan@yahoo.com,M,Karan。如何验证此输入 ++添加代码段 我通过使用逗号分隔符将邮件拆分到下面的函数来传递单个邮件 function validateEmail(email)

希望验证用户可以输入任何类型电子邮件的电子邮件字段。 当用户从Outlook复制粘贴的电子邮件地址时,使用正则表达式进行的验证检查失败。从Outlook复制的电子邮件地址看起来与以前不同

M, Karan <karan.m@outlook.com>
M,Karan
我的输入看起来像
m。karan@yahoo.com,M,Karan
。如何验证此输入

++添加代码段

我通过使用逗号分隔符将邮件拆分到下面的函数来传递单个邮件

function validateEmail(email) {
  var re = /^(([^<>()\[\]\\.,;:\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 re.test(email);
}
功能验证电子邮件(电子邮件){
变量re=/^([^()\[\]\\,;:\s@“]+(\.[^()\[\]\,;:\s@“]+)*)(“+”)(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[1,3}.[0-9]{1,3}.]124;([a-zA Z-0-9]++\];
返回重新测试(电子邮件);
}
当从outlook复制的电子邮件在input元素中可用时,此逻辑中断


期待帮助。

1。解决方案 像这样使用正则表达式(但具体来说,这个正则表达式不是世界上最好的:):

^([a-zA-Z \-0-9,.:])*{0,1}$
2.解决方案 编写解析电子邮件的JavaScript函数,然后使用正则表达式。下面是解析函数的示例:

function parseEmail(origin) {
    return origin.substring(origin.lastIndexOf('<')+1, origin.lastIndexOf('>'));
}
函数解析电子邮件(源){
返回origin.substring(origin.lastIndexOf(“”));
}

这个问题太模糊了。请提供您的代码或您尝试过的代码的示例。谢谢您的回答。我刚刚添加了正在使用的代码段。在从手机添加时,我看不到代码段的格式选项。抱歉。我建议您分解字符串。您可能需要执行多次传递。首先,我们知道某些字符不能包含在电子邮件地址中。空格是第一个明显的字符。我会在空格上拆分字符串,测试每个字符是否为电子邮件。但是如果输入字符串为…m。karan@yahoo.com,M,KaranThat需要一些运算符错误,因为Outlook将至少放置一个空格。即使它没有t、 逗号不能是电子邮件的一部分,所以请将其拆分。
function parseEmail(origin) {
    return origin.substring(origin.lastIndexOf('<')+1, origin.lastIndexOf('>'));
}