• 验证用户名和密码的正则表达式


    //用户名长度6-20位,由数字,字母,下划线组成,且不能以数字开头,字母不区分大小写。
        @Test
        public void main (){
            String loginName = "1_admin";
            System.out.println(checkLoginName(loginName));
            if(!checkLoginName(loginName)){
                System.out.println("用户名不合法,长度6-20位,由数字,字母,下划线组成,不能以数字开头");
            }
        }
    
    
        public static boolean checkLoginName(String loginName) {
            String regExp = "^[A-Za-z_]{1}[A-Za-z\d_]{5,19}$";
            if(loginName.matches(regExp)) {
                return true;
            }else {
                return false;
            }
        }
    //密码长度为8-20位,由数字,字母,下划线组成,且至少包含两种及以上字符,字母区分大小写。
        @Test
        public void main1 (){
            String passWord = "sadwadasdA1_";
            System.out.println(checkPassword(passWord));
            if(!checkPassword(passWord)){
                System.out.println("密码不合法!长度为8-20位,由数字,大小写字母,下划线组成,且至少包含两种及以上字符");
            }
        }
    
        public static boolean checkPassword(String passWord) {
            String regExp = "^(?![0-9]+$)(?![a-z]+$)(?![A-Z]+$)(?![_]+$)[0-9_A-Za-z]{7,19}$";
            if(passWord.matches(regExp)) {
                return true;
            }else {
                return false;
            }
        }

     还是有缺陷的,不过暂时够用了,先用着,

    账号不区分大小写就不写了,用String的toLowerCase()全部转为小写存储即可,验证也是一样

    哪位园友有更好的办法也可以评论

    学习时的痛苦是暂时的 未学到的痛苦是终生的
    本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    AtCoder Grand Contest 49
    Kotlin Heroes 5: ICPC Round 题解 (A-H)
    轮盘赌随机选择算法
    洛谷P1579.验证哥德巴赫猜想(DFS+素性测试)
    洛谷P1308.统计单词数(字符串匹配)
    洛谷P1149.火柴棒等式(暴力搜索)
    洛谷P1036.选数(DFS)
    洛谷P1028.数的计算(动态规划)
    Python对list操作的一些小技巧
    图的DFS和BFS(邻接表)
  • 原文地址:https://www.cnblogs.com/juanxincai/p/12427634.html
Copyright © 2020-2023  润新知