首页 > 解决方案 > 正则表达式:不仅是电子邮件中的数字

问题描述

如何改进我的正则表达式以禁止在我的电子邮件中仅输入数字。

我的正则表达式:

^([a-z0-9а-я_.-]{4,20})@([a-zа-я_]{2,5})\\.([a-zа-я]{2,5})(\\.[a-zа-я]{2,5})?$

无效的:

1111@gmail.com

有效的:

check@gmail.com

标签: regex

解决方案


您可以在您的正则表达式中添加(?![0-9]+@)after ^

^(?![0-9]+@)([a-z0-9а-я_.-]{4,20})@([a-zа-я_]{2,5})\\.([a-zа-я]{2,5})(\\.[a-zа-я]{2,5})?$
 ^^^^^^^^^^^

如果字符串开头有 1 个或多个数字,则负前瞻将失败@

请参阅正则表达式演示


推荐阅读