Java正则表达式验证格式 手机、邮箱、字符串

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

手机号码验证

    public static boolean isMobileNO(String mobiles) {
        try {
            Pattern p = Pattern
                    .compile("(13[0-9]|14[57]|15[012356789]|18[02356789])\\d{8}");
            Matcher m = p.matcher(mobiles);
            return m.matches();
        } catch (Exception e) {
            return false;
        }
    }

验证邮箱地址是否正确

    public static boolean checkEmail(String email) {
        try {
            String check = "([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}";
            Pattern regex = Pattern.compile(check);
            Matcher matcher = regex.matcher(email);
            return matcher.matches();
        } catch (Exception e) {
            return false;
        }
    }

检测字符串中是否包含汉字

    public static boolean checkChinese(String sequence) {
        final String format = "[//u4E00-//u9FA5//uF900-//uFA2D]";
        boolean result = false;
        Pattern pattern = Pattern.compile(format);
        Matcher matcher = pattern.matcher(sequence);
        result = matcher.find();
        return result;
    }

检测字符串中只能包含:中文、数字、下划线(_)、横线(-)

   public static boolean checkNickname(String sequence) {
        final String format = "[^//u4E00-//u9FA5//uF900-//uFA2D//w-_]";
        Pattern pattern = Pattern.compile(format);
        Matcher matcher = pattern.matcher(sequence);
        return !matcher.find();
    } 

获取中间有*号的手机号

   public static String getPhonePass(String phone) {
        if (null == phone || "".equals(phone) || phone.length() < 11) {
            return "";
        }

        String passA = phone.substring(0, 3);
        String passB = phone.substring(phone.length() - 3, phone.length());
        return passA + "*****" + passB;
    }

获取中间有*号的身份证号

    public static String getPidPass(String pid) {
        if (null == pid || "".equals(pid) || pid.length() < 18) {
            return "";
        }

        String passA = pid.substring(0, 3);
        String passB = pid.substring(pid.length() - 3, pid.length());
        return passA + "*****" + passB;
    }