【问题标题】:Regex for n occurence of comma separated email addressesn 出现逗号分隔的电子邮件地址的正则表达式
【发布时间】:2016-05-17 13:34:38
【问题描述】:

我需要为角度验证编写正则表达式以限制用逗号分隔的电子邮件地址的数量。

/^([\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4},?)+$/

我得到了上面的正则表达式来验证逗号分隔的电子邮件地址与其他stackoverflow's 问题。但是我被限制在发生的次数上。

【问题讨论】:

  • 我无法限制出现次数

标签: regex


【解决方案1】:

要限制它们,您需要将 + 量词更改为 {x,y}

例子:

^([\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4},?){1,6}$

这会将电子邮件的出现次数限制在 1 到 6 之间。

【讨论】:

    【解决方案2】:

    如果您想限制为单个电子邮件地址,只需使用您原来的正则表达式:

    ^([\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4},?)$
    

    如果您想限制为 2 个或更多正则表达式,那么您可以在此正则表达式上进行构建。例如,要将电子邮件地址限制在 1 到 5 个之间,请使用以下命令:

    ^([\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4})(,[\w+-.%]+@[\w-.]+\.[A-Za-z]{2,4}){0,4}$
    

    Regex101

    【讨论】:

    • 我想限制电子邮件地址的数量。这就是我被困的地方
    • 我相信我已经给了你一些可以处理你的用例的东西。
    • 这里的逗号在结尾和电子邮件之间也是可选的。
    • @Ibarros Typo,我删除了杂散的逗号。
    • @TimBiegeleisen 就是这样:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 2017-10-25
    • 2014-06-22
    相关资源
    最近更新 更多