更新到2018年5月,支持最新的166号段
/** * Java 使用 */ String PHONE_NUMBER_REG = "^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\\d{8}$";
/** * JS 使用 */ "18016381232".match(/^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\d{8}$/)
因为我是在Java中使用的,所以正则里使用了双斜杠,防止\d转义,导致在JS或者其他语言中使用失败,表示抱歉,JS只需要去掉其中的一个斜杠就可以了。
更新到2019年06月25日
/** * Java最新版手机号正则 */ String PHONE_NUMBER_REG = "^(1[3-9])\\d{9}$"