Java中使用matches函数判断密码强度

Java中使用matches函数判断密码强度

本文是基于Windows 10系统环境,使用Java中使用matches函数判断密码强度

  • Windows 10

一、matches函数

  • java中的matches()进行模式匹配

(1) matches使用方法

String str1 = new String("abc");
boolean flag1 = str1.matches("[a-z]{3}"
System.out.println(flag1);
// flag=true     
String str2 = new String("abc");
boolean flag2 = str2.matches("[a-z]{4}"
System.out.println(flag2);
// flag=false
String str3 = new String("a2b");
boolean flag3 = str3.matches("[a-z]{3}"
System.out.println(flag3);
// flag=false    

二、matches应用

(1) 判断密码强度

public String checkPassword(String password) {
        String regexWeak1 = "^[0-9A-Za-z]{6,16}$";
        String regexMedium1 = "^(?=.{6,16})[0-9A-Za-z]*[^0-9A-Za-z][0-9A-Za-z]*$";
        String regexMedium2 = "^(?=.{6,16})[0-9A-Za-z]*[\x00-\x2f\x3A-\x40\x5B-\xFF][0-9A-Za-z]*$";
        String regexStrong1 = "^(?=.{6,16})([0-9A-Za-z]*[^0-9A-Za-z][0-9A-Za-z]*){2,}$";
        String regexStrong2 = "^(?=.{6,16})([0-9A-Za-z]*[\x00-\x2F\x3A-\x40\x5B-\xFF][0-9A-Za-z]*){2,}$*/";

        if (passwordStr.matches(regexWeak1)) {
            return "Weak";
        }
        if (passwordStr.matches(regexMedium1)) {
            return "Medium";
        }
        if (passwordStr.matches(regexMedium2)) {
            return "Medium";
        }
        if (passwordStr.matches(regexStrong1)) {
            return "Strong";
        }
        if (passwordStr.matches(regexStrong2)) {
            return "Strong";
        }
        return passwordStr;

    }



发布了76 篇原创文章 · 获赞 111 · 访问量 128万+

猜你喜欢

转载自blog.csdn.net/qq_32599479/article/details/104410898
今日推荐