我希望正则表达式验证多个电子邮件地址的长文本字段由逗号分隔,但验证应放在使该字段应接受电子邮件ID格式的数据(例如:xyz@aig.com、@xyz@abc.in、xyz@abc.uk)。我试过正则表达式:
xyz@aig.com
@xyz@abc.in
xyz@abc.uk
^([A-Za-z]+[A-Za-z0-9.-]+@(([aig.com])|([abc.in])|([abc.uk]))+\.[A-Za-z]{2,4}(\s*(;|,)\s*|\s*$))+$)
如果用户输入(例如:abc@aig.uk、abc@aig.in)
9ceoxa921#
您可以使用它来验证指定的列表:
^(?:(?:[A-Za-z][A-Za-z0-9.-]*@(?:aig\.com|abc\.in|abc\.uk))(?:,|$))*$
值得注意的是:(?:aig\.com|abc\.in|abc\.uk)匹配aig.com、abc.in、abc.uk中的任何一个。在您的尝试中,不需要[],因为[aig.com]匹配a,acc.cc.s或方括号内的任何符号排列。(?:,|$)也匹配,或字符串的结尾。
(?:aig\.com|abc\.in|abc\.uk)
aig.com
abc.in
abc.uk
[]
[aig.com]
a
acc.cc.s
(?:,|$)
,
1条答案
按热度按时间9ceoxa921#
您可以使用它来验证指定的列表:
值得注意的是:
(?:aig\.com|abc\.in|abc\.uk)
匹配aig.com
、abc.in
、abc.uk
中的任何一个。在您的尝试中,不需要
[]
,因为[aig.com]
匹配a
,acc.cc.s
或方括号内的任何符号排列。(?:,|$)
也匹配,
或字符串的结尾。