【问题标题】:Regex Forcing 3 minimum Characters in email address正则表达式强制电子邮件地址中的至少 3 个字符
【发布时间】:2021-10-29 12:51:01
【问题描述】:

我有正则表达式^[a-zA-Z0-9äöüÄÖÜß]{1}[äöüÄÖÜß\w\._%+-]{1}[äöüÄÖÜßa-zA-Z0-9]{1}@[\wäöüÄÖÜß]{1}[äöüÄÖÜß\w\.-]+\.[a-z]{2,4}$ 用于电子邮件验证,它接受@ 符号前至少3 个字符,我想在@ 符号前允许一个或多个字符。参考下面的解释。 abc@gmail.de 工作正常,但 ab@gmail.com 不起作用。我希望用户在 @ 符号之前输入至少 1 个字符。

【问题讨论】:

    标签: regex validation


    【解决方案1】:

    您可以从模式中省略 {1},因为没有量词的字符类本身匹配 1 个字符。目前您正在匹配 3 个字符,因此您可以只使用一个字符类并重复 1 次或多次。

    请注意,您不必对字符类中的点进行转义。

    ^[a-zA-Z0-9][a-zA-Z0-9äöüÄÖÜß]*@[\wäöüÄÖÜß][äöüÄÖÜß\w.-]+\.[a-z]{2,4}$
    

    查看regex demo

    【讨论】:

    • 谢谢这工作正常,但问题是我必须确保第一个字符不应该是特殊字符。
    • @AirCodeOne 我已将模式更新为不以“特殊”字符开头。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-09
    • 1970-01-01
    相关资源
    最近更新 更多