我有正则表达式来检查由逗号分隔的多个有效电子邮件,但是我无法对其进行更新以允许多个尾随和前导空格。我应该允许以下模式匹配我的正则表达式。
abc@test.com,bcd@test.com, new@test.com, hello@test.com ,new@test.com // allow
abc@test.com bcd@test.comnew@test.com// don't allow
我现在使用的正则表达式。
^(\s?[^\s,]+@[^\s,]+\.[^\s,]+\s?,)*(\s?[^\s,]+@[^\s,]+\.[^\s,]+)$
上述正则表达式不允许使用模式
abc@test.com,bcd@test.com, new@test.com, hello@test.com ,new@test.com
在逗号后的逗号之前只能有一个空格。我希望正则表达式在逗号前后允许多个空格
答案 0 :(得分:0)
为什么不先吐出字符串:
function getValidEmailAddresses(strInput)
{
return strInput.split(',').map(p => p.trim())
.filter(c=> c.test(/^(([^<>()\[\]\\.,;:\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,}))$/));
}