Android 的朋友们,还在为不会写正则而烦恼么,确实不会烦恼只要一百度就有 可是 狗蛋儿今天遇到一个问题,手机号在注册时候一直提示手机号格式不正确(1731XXXXXXX ),可气坏狗蛋儿了。现在分享一个比较完整的正则,如有不全请大家及时指出。
移动:134(0-8)、135、136、137、138、139、147、150、151、152、157、158、159、178、182、183、184、187、188
联通:130、131、132、145、155、156、171、175、176、185、186
电信:133、153、173、177、180、181、189
全球星:1349
虚拟运营商:170
手机号正则:"^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,1,3,5-8])|(18[0-9])|(147))\\d{8}$"
邮箱:"^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";
身份证(18位):"^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9Xx])$"
判断方式:
/** 判断是否匹配正*
@paramregex正则表达式
@paraminput要匹配的字符串
@return{@code true}: 匹配{@code false}: 不匹配
*/
public static boolean isMatch(String regex,CharSequence input) {
returninput !=null&& input.length() >0&& Pattern.matches(regex,input);
}