高分悬赏:求一个检查密码强度的正则表达式

要求至少8位,必须包含大写、小写、数字、其他符号任意三种
Java语言要求能用的

正则好像不好写,直接用字符串校验也可以呢。

public boolean validatePwd(String password){
   if(password == null || password.length<8){
        return false;
     }

     if( !Regex.IsMatch(password, "[A-Z]")
          && !Regex.IsMatch(password, "[a-z]")
                 && !Regex.IsMatch(password, "[0-9]")){
       return false;
     }

     return true;
}

http://www.itcdns.cn/problem/detail/1585049902237