Android實用的正則表達式工具

1、郵箱正則表達式
public boolean isEmail(String strEmail) {
    String strPattern = "^[a-zA-Z0-9][\\w\\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\\w\\.-]*[a-zA-Z0-9]\\.[a-zA-Z][a-zA-Z\\.]*[a-zA-Z]$";
    Pattern p = Pattern.compile(strPattern);
    Matcher m = p.matcher(strEmail);
    return m.matches();
}



2、驗證手機格式
public static boolean isMobileNO(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衛通) //177電信4G
 總結起來就是第一位必定爲1,第二位必定爲3或5或8,其他位置的可以爲0-9
 */
    String telRegex = "[1][34578]\\d{9}";//"[1]"代表第1位爲數字1,"[358]"代表第二位可以爲3、5、8中的一個,"\\d{9}"代表後面是可以是0~9的數字,有9位。

    if (TextUtils.isEmpty(mobiles))
        return false;
    else
        return mobiles.matches(telRegex);
}


3、驗證車牌號
public static boolean isCarNo(String carNO) {

    String strPattern = "^[A-Z0-9]*[A-Z0-9]";
    if (TextUtils.isEmpty(carNO)) {
        return false;
    } else {
        return carNO.matches(strPattern);
    }
}

4、判斷字符串是否是日期格式
public static boolean isValidDate(String str) {
    boolean convertSuccess = true;
    // 指定日期格式爲四位年-兩位月份-兩位日期,注意yyyy-MM-dd區分大小寫;
    SimpleDateFormat simpleDataFormat = new SimpleDateFormat("yyyy-MM-dd");
    try {
        // 設置lenient爲false. 否則SimpleDateFormat會比較寬鬆地驗證日期,比如2015-11-29會被接受,並轉換成2015-11-01
        simpleDataFormat.setLenient(false);
        simpleDataFormat.parse(str);
    } catch (ParseException e) {
         e.printStackTrace();
        // 如果throw 就說明格式不對
        convertSuccess = false;
    }
    return convertSuccess;
}
發佈了33 篇原創文章 · 獲贊 7 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章