Products
GG网络技术分享 2025-03-18 16:15 4
满足大写字母、小写字母、数字和特殊字符四者中三者以上组合要求,至少10位以上长度,求解啊
你试试:
如果是Java,使用:
^(?!([a-z]*|[A-Z]*|[\\d]*|[\\p{Punct}]*|[a-zA-Z]*|[a-z\\d]*|[a-z\\p{Punct}]*|[A-Z\\d]*|[A-Z\\p{Punct}]*|[\\d\\p{Punct}]*)$)[a-zA-Z\\d\\p{Punct}]{8,}$
如果不是Java,就把上面所有的\\p{Punct}
换成
!\\\"#\\$%&\'()*+,\\-\\./:;<=>?@\\[\\\\\\]^_`{|}~
请问特殊字符指的是什么?(\\n,\\t这些吗?)
晕,场景好奇葩。特殊字符有没有范围,还是就这四个
不知道行不行
str = \\\"a423Z5435345!\\\";num = 0;
str.match(/[a-z]/) ? num+=1:num;
str.match(/[A-Z]/) ? num+=1:num;
str.match(/[0-9]/) ? num+=1:num;
str.match(/\\#|\\!|\\@|\\$/) ? num+=1:num;
str.length>10 ? num+=1:num;
if(num>4){
//符合
}
三者以上,是不是只能是四者都有?
可以分两步做
1、先用a\\w{2}_b\\w{2}模式找到匹配串,提取匹配串a后面的两位,提取匹串b后面的两位。
2、用上面的结果构造匹配模式
a.._b..直接替换成A..B..
Demand feedback