Android開發中的正則匹配

在Android開發中,可能也會遇到一下輸入框的合法性驗證,這時候最常用的就應該是正則表達式去做一些匹配了,下面就常用的正則匹配做一下介紹


1. 手機號碼的驗證

根據實際開發於2009年9月7日最新統計: 中國電信發佈中國3G號碼段:中國聯通185,186;中國移動188,187;中國電信189,180共6個號段。

移動: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衛通)

匹配代碼(目前,號碼段可能添加了一下,大家根據實際情況寫正則表達式)

[java] view plaincopy
  1. public class ClassPathResource {   
  2.  private static final Logger logger = Logger.getLogger(ClassPathResource.class);  
  3.     public static boolean isMobileNO(String mobiles){       
  4.         Pattern p = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");       
  5.         Matcher m = p.matcher(mobiles);       
  6.         logger.info(m.matches()+"---");       
  7.         return m.matches();       
  8.     }   

2.郵件的驗證


 public static boolean isEmail(String email){     

[java] view plaincopy
  1. String str="^([a-zA-Z0-9]*[-_]?[a-zA-Z0-9]+)*@([a-zA-Z0-9]*[-_]?[a-zA-Z0-9]+)+[\\.][A-Za-z]{2,3}([\\.][A-Za-z]{2})?$";  
  2.    Pattern p = Pattern.compile(str);       
  3.    Matcher m = p.matcher(email);       
  4.    logger.info(m.matches()+"---");       
  5.    return m.matches();       
  6.    

3.IP地址的驗證

[java] view plaincopy
  1. Pattern pattern = Pattern.compile("");  
  2. Matcher matcher = pattern.matcher("127.400.600.2"); //以驗證127.400.600.2爲例  
  3. System.out.println(matcher.matches());  

參考:http://hi.baidu.com/s_angel_3/item/7e030530a6a3ce1c9dc65e5f
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章