如何匹配逗号分隔的电子邮件列表与正则表达式?
尝试使用asp:RegularExpressionValidator
validation文本框中以逗号分隔的电子邮件列表 ,请参阅以下内容:
当我在https://regexhero.net/tester/上测试时,它工作正常,但它在我的页面上不起作用。
这是我的示例输入:
test@test.com,test1@test.com
我在这篇文章中尝试了一个建议,但无法让它发挥作用。
ps我不想讨论正确的电子邮件validation
试试这个:
^([w+-.%]+@[w-.]+.[A-Za-z]{2,4},?)+$
在括号后添加+
表示前面的组可以存在1次或更多次。
添加^
和$
意味着字符串的开头和匹配的开始(或匹配的结束和字符串的结尾)之间的任何内容都会导致validation失败。
此正则表达式将允许逗号后面带空格的电子邮件。
^[W]*([w+-.%]+@[w-.]+.[A-Za-z]{2,4}[W]*,{1}[W]*)*([w+-.%]+@[w-.]+.[A-Za-z]{2,4})[W]*$
玩弄这个,一位同事想出了这个更准确的RegEx。 上面的答案似乎通过电子邮件地址列表,其中第一个元素不是电子邮件地址。 这是更新,它还允许逗号后面的空格。
^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+,*[W]*)+$
这也有效。 这对电子邮件来说有点严格,并不是说输入的电子邮件地址不止一个或者逗号都存在。
选择最佳的第一个答案匹配abc@xyz.comxyz@abc.com
这样无效的字符串。
以下正则表达式将用于逗号分隔的电子邮件ID非常棒。
^([w+-.%]+@[w.-]+.[A-Za-z]{2,4})(,[w+-.%]+@[w.-]+.[A-Za-z]{2,4})*$
它将匹配单个emailId,逗号分隔的emailId,但如果错过了逗号则不匹配。
第一组将匹配单个emailId的字符串。 第二组可选地需要’*’令牌,即0或更多这样的组但是’,’需要在这样的emailId的开头,这使得逗号分隔的emailId与上述正则表达式匹配。
下面的正则表达式限制性较小,更适合validation手动输入的逗号分隔电子邮件地址列表。 它允许相邻的逗号。
^([w+-.%]+@[w-.]+.[A-Za-z]{2,4},*[W]*)+$
使用以下正则表达式,它将解决您的问题。 以下正则表达式也将使用逗号来接收post和pre空格
/^((([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Zs?]{2,5}){1,25})(s?,s*?))$/
我知道,我有点迟到了,但我想我会加上我的两分钱,因为接受的答案有一个问题,就是在没有逗号的情况下将电子邮件地址相互匹配。
我提出的正则表达式是这样的:
^[A-Z0-9._%+-]+@[A-Z0-9.-]+.[AZ]{2,}(,[A-Z0-9._%+-]+@[A-Z0-9.-]+.[AZ]{2,})*$
它与接受的答案类似,但解决了我所谈论的问题。 我提出的解决方案是一次或多次搜索“电子邮件地址后跟可选的逗号”,这是接受的答案所做的,此正则表达式搜索“电子邮件地址后跟可选的逗号前缀电子邮件地址任何次数“。
这通过将逗号分组后的电子邮件地址,并使整个组可选,而不仅仅是逗号来解决问题。
注意:此正则表达式用于启用不敏感标志。
您可以使用任何正则表达式匹配您喜欢的电子邮件地址,我只使用了我已经使用的那个。 你只需用你想要使用的正则表达式替换每个[A-Z0-9._%+-]+@[A-Z0-9.-]+.[AZ]{2,}
。
对我有用的解决方案如下
上述就是C#学习教程:如何匹配逗号分隔的电子邮件列表与正则表达式?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
^([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+)(,([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+))*
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1000731.html