regex - 正则表达式强制电子邮件地址中的至少 3 个字符
问题描述
我有用于电子邮件验证的正则表达式^[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 个字符。
解决方案
您可以从模式中省略{1}
,因为没有量词的字符类本身匹配 1 个字符。目前您正在匹配 3 个字符,因此您可以只使用一个字符类并重复 1 次或多次。
请注意,您不必转义字符类中的点。
^[a-zA-Z0-9][a-zA-Z0-9äöüÄÖÜß]*@[\wäöüÄÖÜß][äöüÄÖÜß\w.-]+\.[a-z]{2,4}$
查看正则表达式演示
推荐阅读
- docker - 通过 docker 在单个 Tomcat 实例上运行不同的 webapp 镜像
- javascript - 使用 PHP 在电子邮件中发送表单数据而不刷新页面
- python - 使用 SymPy 解决包含 Abs() 操作的复杂系统
- rocket.chat - 在火箭聊天中添加 Facebook 和 gmail 登录功能
- apache-spark - Graphframes: py4j.protocol.Py4JJavaError: 调用 o100.createGraph 时出错
- javascript - ScrollView 圆角
- c++ - (C++)从参数传递的类调用函数
- android - 如何编写一个在成功构建时提交当前分支的 gradle 脚本
- javascript - 关于 websocket 和 loction.replace 的问题
- django - DJANGO:mixins.DestroyModelMixin 删除 - 方法不允许