这里我整理了开发中常用的正则表达式,希望可以帮助各位参考,也便于自己查阅,如果有错误的地方希望大家可以指出来,我会积极改正。
- 身份证(15位或者18位)
String rexp = "(^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$)|(^[1-9]\\d{5}\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{2}[0-9Xx]$)";
Pattern pat = Pattern.compile(rexp);
Matcher m = pat.matcher("41112220191122123x");//测试的是18位身份证
System.out.println(m.matches()); //true
- 手机号
//不支持110、119等紧急号码
String rexp = "^(1[3-9])\\d{9}$";
Pattern pat = Pattern.compile(rexp);
Matcher m = pat.matcher("19999999999");
System.out.println(m.matches());//true