本文实例讲述了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卫通)
匹配代码(目前,号码段可能添加了一下,大家根据实际情况写正则表达式)
public class ClassPathResource { private static final Logger logger = Logger.getLogger(ClassPathResource.class); public static boolean isMobileNO(String mobiles){ Pattern p = Pattern.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$"); Matcher m = p.matcher(mobiles); logger.info(m.matches()+"---"); return m.matches(); }
2.邮件的验证
public static boolean isEmail(String email){ 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})?$"; Pattern p = Pattern.compile(str); Matcher m = p.matcher(email); logger.info(m.matches()+"---"); return m.matches();
3.IP地址的验证
Pattern pattern = Pattern.compile(""); Matcher matcher = pattern.matcher("127.400.600.2"); //以验证127.400.600.2为例 System.out.println(matcher.matches());
PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
JavaScript正则表达式在线测试工具:
http://tools.jb51.net/regex/javascript
正则表达式在线生成工具:
http://tools.jb51.net/regex/create_reg
希望本文所述对大家Android程序设计有所帮助。
基本模式匹配 一切从最基本的开始。模式,是正则表达式最基本的元素,它们是一组描述字符串特征的字符。模式可以很简单,由普通的字符串组成,也可以非常复杂,往往用特殊的字符表示一个范围内的字符、重复出现,或表示上下文。例如: ^once 这个模式包含一个特殊的字符^,表示该模式只匹配那些以once开头的字符串。例如该模式与字符串"once upon a time"匹配,与"There once was
我无法在Android环境中设置RegEx匹配器。 我的字符串模式: 未转义的模式(匹配所有内容,但西里尔字母和拉丁字母,数字,空格,逗号,感叹号,减号,下划线,方括号,分号和加全局忽略大小写;我认为这些是“合法的”): 我的代码: 但是,这既不会引发任何错误,也不会起作用。 到目前为止,我尝试过但没有成功(其中string是String变量): < li> < Li > < code > pat
本文向大家介绍Android API编程之Assets文件操作示例,包括了Android API编程之Assets文件操作示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android API Assets文件操作。分享给大家供大家参考,具体如下: 更多关于Android相关内容感兴趣的读者可查看本站专题:《Android文件操作技巧汇总》、《Android视图View技巧总结》、《A
本文向大家介绍开发过程最全的正则表达式匹配中英文、字母和数字,包括了开发过程最全的正则表达式匹配中英文、字母和数字的使用技巧和注意事项,需要的朋友参考一下 在做项目的过程中,使用正则表达式来匹配一段文本中的特定种类字符,是比较常用的一种方式,下面是对常用的正则匹配做了一个归纳整理。 1、匹配中文:[\u4e00-\u9fa5] 2、英文字母:[a-zA-Z] 3、数字:[0-9] 4、匹配中文,英
本文向大家介绍Java正则提取中括号中的内容操作示例,包括了Java正则提取中括号中的内容操作示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java正则提取中括号中的内容操作。分享给大家供大家参考,具体如下: 曾经在工作中遇到一个问题,就是需要提取字符串中每一个中括号里的内容,在网上搜了一下,发现用正则表达式可以提取中括号中的内容,具体实现如下: 输出结果如下: 0-->第1个中括号
问题内容: 我有一个看起来像这样的文件: 该文件包含以开头和结尾的块。请注意,()之间的行数可以不同。我想在第一行中打印所有带有字符串“ test”的块(例如此处的“ SF:/ home / developer / test / resources / …”)。对于此示例,我想要的输出将是: 我想在 Linux 环境中执行此操作。 我的第一个尝试是使用“ sed”命令执行此操作,但是经过一些研究,