正则表达式求助~ ~

满足大写字母、小写字母、数字和特殊字符四者中三者以上组合要求,至少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){
    //符合
}

三者以上,是不是只能是四者都有?