/** * 验证手机号码(1开头,11位数字,不验证第二位,防止新出的号段验证不通过) * * @param mobile * @return true 正确手机号码; false 不是手机号 */ public static boolean isMobile(String mobile) { // 代码来源:http://blog.csdn.net/dai_zhenliang/article/details/8186249 // 移动: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卫通) // 总结起来就是第一位必定为1,第二位必定为3或5或8,其他位置的可以为0-9 // String telRegex = "[1][358]\\d{9}"; //"[1]"代表第1位为数字1,"[358]"代表第二位可以为3、5、8中的一个,"\\d{9}"代表后面是可以是0~9的数 String telRegex = "[1]\\d{10}"; //"[1]"代表第1位为数字1,"\\d{10}"代表后面是可以是0~9的数 if (isEmpty(mobile)) return false; else return mobile.matches(telRegex); }