Java正則表達式驗證格式 手機、郵箱、字符串

jopen 9年前發布 | 5K 次閱讀 Java

手機號碼驗證

    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;
    }


 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!