","之后的多个电子邮件地址中的空白区域

use*_*510 0 c# regex asp.net email-validation

我使用RegularExpressionValidator验证由逗号" , " 分隔的多个电子邮件地址

我的下面的表达式适用于这个要求:

"((\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)*([,])*)*"
Run Code Online (Sandbox Code Playgroud)

需求是这个表达式应该能够在电子邮件地址中逗号后处理空格.

例如,我当前的表达工作文件为email1 @ domain.com,email2 @ domain.com,但它不做的是email1 @ domain.com,email2 @ domain.com

我知道可以有很多解决方案,但在我的snario中最好是增强这个表达式.

请指导我

use*_*116 5

您可以使用现有的正则表达式,而是通过每个逗号分割字符串并修剪尾随/前导空格:

var emails = input.Split(',');
foreach (var email in emails.Select(ee => ee.Trim()))
{
    if (!emailValidator.IsMatch(email))
    {
        // announce a bad email
    }
}
Run Code Online (Sandbox Code Playgroud)