電話、郵箱、QQ正則表達式(Android)

 在做項目的時候,輸入信息相關的地方少不了要進行信息校驗,我總結了一下我用到的校驗方式

 電話 (11位號碼)如:135********

public static boolean regexPhoneNumber(String phoneNum) {
        // 電話號碼匹配結果
        boolean isPhoneNum_matcher = phoneNum.matches("1[34578]\\d{9}");
        // 如果isPhoneNum_matcher is true , 則return true , else return false
        if (isPhoneNum_matcher)
            return true;
        return false;
    }


郵箱
/**
     * 郵箱正則驗證:"[a-zA-Z_0-9]+@[a-zA-Z0-9]+(\\.[a-zA-Z]{2,}){1,3}" '@'號前沒有點'.'
     * 郵箱正則驗證:"^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$" '@'號前有點'.'
     *
     * param email
     *            傳入的參數僅僅是一個郵箱地址時,調用此方法
     * return 如果匹配正確,return true , else return false
     */
    // 如果傳進來的是郵箱地址,則對郵箱進行正則匹配
    public static boolean regexEmailAddress(String email) {

        // 郵箱匹配結果
        boolean isEmail_matcher = email.matches("^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
        // 如果isEmail_matcher value is true , 則 return true , else return false
        if (isEmail_matcher)
            return true;

        return false;
    }

QQ

/**
     *
     * param qqNum
     *            傳入的QQ
     * return 如果匹配正確,return true, else return false
     */
    public static boolean regexQQNumber(String qqNum) {

        // QQ號匹配結果
        boolean isQQNum_matcher = qqNum.matches("[1-9]\\d{2,11}");

        if (isQQNum_matcher)
            return true;
        return false;
    }

郵編

 public static boolean checkpostalcode(String postalcode) {
        boolean ispostalcode_matcher = postalcode.matches("[1-9]\\d{5}(?!\\d)");

        if (ispostalcode_matcher)
            return true;
        return false;
    }

 

IC Card

 public static boolean checkICCard(String cardNumber) {
        boolean iscardNumber_matcher = cardNumber.matches("[1-9]\\d{5}(?!\\d)");
        if (iscardNumber_matcher)
            return true;
        return false;
    }

對於6到20位包含幾種特殊字符(!#%*等)密碼 的驗證

 public static boolean regexPassWord(String pwd) {

        // 密碼匹配結果
        //        boolean isPassWord_matcher = pwd.matches("^([A-Z]|[a-z]|[0-9]){6,20}$");
        //^[\@A-Za-z0-9\!\#\$\%\^\&\*\.\~]{6,22}$
        boolean isPassWord_matcher = pwd.matches("^[\\@A-Za-z0-9\\!\\#\\$\\%\\^\\&\\*\\.\\~]{6,20}$");
        if (isPassWord_matcher)
            return true;

        return false;
    }




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章