入门Android开发--实例2--登录界面的实现

上一篇文章 《入门Android开发--实例1--欢迎界面的实现》

下一篇文章 《》


登录简单规则:

  /**
     * 手机号码验证
     * @param mobiles
     * @return
     */

    public static boolean isMobileNu(String mobiles) {
		/*
		    移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188
		    联通:130、131、132、152、155、156、185、186
		    电信:133、153、180、189、(1349卫通)
		    总结起来就是第一位必定为1,第二位必定为3或5或8,其他位置的可以为0-9
	    */
        String telRegex = "[1][358]\\d{9}";//"[1]"代表第1位为数字1,"[358]"代表第二位可以为3、5、8中的一个,"\\d{9}"代表后面是可以是0~9的数字,有9位。
        return mobiles.matches(telRegex);
    }

    /**
     * 验证昵称 "昵称应该为\n1、6-20个字符\n2、3-10个汉字";
     */
    public static boolean verifyNickname(String nickname) {
        if (nickname == null || nickname.length() == 0) {
            return false;
        }
        int len = 0;
        char[] nickchar = nickname.toCharArray();
        for (int i = 0; i < nickchar.length; i++) {
            if (isChinese(nickchar[i])) {
                len += 2;
            } else {
                len += 1;
            }
        }
        if (len < 6 || len > 20) {//"昵称应该为\n1、6-20个字符\n2、3-10个汉字";
            return false;
        }
        return true;
    }

    /**
     * 中文验证
     */
    private static boolean isChinese(char c) {
        Character.UnicodeBlock ub = Character.UnicodeBlock.of(c);
        if (ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS
                || ub == Character.UnicodeBlock.CJK_COMPATIBILITY_IDEOGRAPHS
                || ub == Character.UnicodeBlock.CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
                || ub == Character.UnicodeBlock.GENERAL_PUNCTUATION
                || ub == Character.UnicodeBlock.CJK_SYMBOLS_AND_PUNCTUATION
                || ub == Character.UnicodeBlock.HALFWIDTH_AND_FULLWIDTH_FORMS) {
            return true;
        }
        return false;
    }

    /**
     * 账号验证
     */
    public static boolean checkAccount(String account){
        if(account == null || account.length() <6 ||account.length()>20 ){
            return false;
        }
        String regix= "^[0-9A-Za-z]{6,20}$";
        if(account.matches(regix)){
            return true;
        }else{
            return false;
        }
    }

    /**
     * 密码验证
     */
    public static boolean checkPassword(String password){
        if(password == null || password.length() <6 ||password.length()>32 ){
            return false;
        }
        String regix= "^[0-9A-Za-z]{6,32}$";
        if(password.matches(regix)){
            return true;
        }else{
            return false;
        }
    }



你可能感兴趣的:(入门Android开发--实例2--登录界面的实现)