Android开发中的正则匹配

来源:互联网 发布:金山绘图软件下载 编辑:程序博客网 时间:2024/05/04 17:47
在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
原创粉丝点击