临近期中,一切都忙了起来。匆忙之中从自己的代码中复制了些,分享加自我保存一下
使用的是JAVA,可能每个语言的正则表达式有一点点形式上的区别。
/*1.判断是否是电话号码 /** * 验证手机号码 * * 移动号码段:139、138、137、136、135、134、150、151、152、157、158、159、182、183、187、188、147 * 联通号码段:130、131、132、136、185、186、145 * 电信号码段:133、153、180、189 */ /*String s="18752853806"; String regex = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8}$"; System.out.println(s.matches(regex)); //11位手机 String s="0511-87256548";
String regex = "^(0\\d{2}-\\d{8}(-\\d{1,4})?)|(0\\d{3}-\\d{7,8}(-\\d{1,4})?)$"; System.out.println(s.matches(regex)); //固定电话*/
2.电子邮箱验证
String s="xxx@xxxx.xxx";
String regex = "^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$";
//严格的邮箱
String regex="[0-9a-zA-Z_-]+(@)[0-9a-zA-Z_-]+(.)((com)|(cn)|(com.cn)|(org)|(net))$";
//仅仅支持com,com.cn,cn,org,net结尾的邮箱,当然也可以扩充
3.日期的正则表达式 String regex="((19)\\d{2}(.)((1)[012]|\\d{1}|(0)\\d{1})(.)([123]\\d{1}|\\d{1}|(0)\\d{1}))" + "|((20)\\d{2}(.)((1)[012]|\\d{1}|(0)\\d{1})(.)([123]\\d{1}|\\d{1}|(0)\\d{1}))$";
//简单的,并不能判断月份的天数,闰年更是不能,格式设置是 “1978.12.13”,“1975.3.2”
4.身份证的正则表达式
//String regex="\\d{6}"+"(((19)\\d{2}((1)[012]|(0)\\d{1})([123]\\d{1}|(0)\\d{1}))"
// + "|((20)\\d{2}((1)[012]|(0)\\d{1})([123]\\d{1}|(0)\\d{1})))(\\d{3}[0-9Xx])$";
//支持对出生日期的判断,借助的是3中的判断,也是简单的判断,不能确定
原文:http://www.cnblogs.com/qiny1012/p/7719643.html