我觉得这个不一定完全用正则式去处理,起码不是一个规则式能处理的。
“字母、数字、大写、标点符号至少包含3种”这里其实准确描述是“小写字母、数字、大写、标点符号至少包含3种” 这个就是规则式不能简单处理的。
我要处理大致是
- 一个判断有8-20位字符,且不包含空格和中文的规则式测试
- 分别构造判断是否有 小写字母、数字、大写字母、标点符号 的规则式,并对前述字符串进行测试,每个测试通过则一个计数器(比如名为
typeCount
,该初始化为0)加1,4个测试后如果typeCount>=3
就符合要求,这个测试中还可以结合测试规则对应给出类型符合的提示。
这个一般是用于设置密码的要求吧。
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…