现有手机号码段:(相关资料参考百度百科)
电信:
2G/3G号段(CDMA2000)133、153、180、181、189
4G号段 177
联通:
2G号段(GSM)130、131、132、155、156
3G上网卡145
3G号段(WCDMA)185、186
4G号段 176
移动:
2G号段(GSM):134x(0-8)、135、136、137、138、139、150、151、152、158、159、182、183、184
3G号段(TD-SCDMA)有157、187、188
3G上网卡 147
4G号段 178
补充:
14号段以前为上网卡专属号段,如中国联通的是145,中国移动的是147等等。
170号段为虚拟运营商专属号段,170号段的 11 位手机号前四位来区分基础运营商,其中 “1700” 为中国电信的转售号码标识,“1705” 为中国移动,“1709” 为中国联通。
卫星通信 1349
手机号码正则:手机号有些人会加86或0,此处设置为有则取其一
/** 判断手机格式是否正确 */ public static boolean isMobileNO(String mobiles) { Pattern p = Pattern.compile("^(86?|0?)1(3[0-9]|4[57]|5[0-35-9]|7[6-8]|8[0-9])[0-9]{8}$");//目前号码段 Matcher m = p.matcher(mobiles); return m.matches(); }现有电话号码格式:大致是区号3-4位,以0开头。号码7-8位,不以0开头。这里加了2-4位的分机号,对于分机号不怎么了解。
电话号码正则:区号与正式号码段之间的-设置为可有可无。
/** 判断固话号码格式是否正确*/ public static boolean isTelPhoneNO(String telphone) { Pattern p = Pattern.compile("^(0[1-9]{2,3}\\-?)?[1-9][0-9]{6,7}(\\-\\d{2,4})?$");//目前号码段 Matcher m = p.matcher(telphone); return m.matches(); }
Email 格式:~@~.~ 或~@~.~.~
Email 正则:此处@号码之前是自己写的,后面自己没有研究出来,借鉴了别人的,且没看懂....(如果有同学路过,望帮忙解释下) 此正则@后面要求英文字母是小写的。
/** 判断email格式是否正确 */ public static boolean isEmail(String email) { String str = "^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.)|" + "(([a-z0-9\\-]+\\.)+))([a-z]{2,4}|[0-9]{1,3})(\\]?)$"; Pattern p = Pattern.compile(str); Matcher m = p.matcher(email); return m.matches(); }
此博客用于工作学习记录——山不在高,早安!