我对设置密码规则有一个奇怪的要求..:| 我的要求是设置密码规则只允许大写字母,min.password长度为5,最大密码长度为8.我使用了以下表达式。
^(?=.*[A-Z]).{5,8}$
但是,它不会那样工作。后来,我才知道[A-Z]并不意味着只允许使用大写字母,这意味着至少应该是大写字母。 它适用于范围{5,8},请指导我完成仅允许大写字母的其他要求。 我们可以尝试为所有其他事情设置否定吗?如果是的话,那么让我知道写一个否定的方法吗?
提前致谢..
答案 0 :(得分:3)
以下听起来像您描述的最简单的实现:
^[A-Z]{5,8}$
我不确定为什么你需要像(?=...)
那样的“零宽度正向前瞻”。只是匹配字符串,没有什么棘手的。
答案 1 :(得分:2)
规则应该是这样的:
^(?=[A-Z]{5-8}$)
这意味着:5-8 A-Z
个字母后跟字符串结尾。请注意,我已将$ IN放入()
,以便您可以添加其他规则/使用字符串
^(?=[A-Z]{5-8}$)(?!A+$)
例如,这是相同的加上“仅A”的排除规则,因此没有AAAAA
,AAAAAA
......