关闭

截止16年8月30号,最新版的正则判断手机号码

标签: 安卓 登陆 正则
316人阅读 评论(0) 收藏 举报
分类:

我这段时间写登陆,复制了很多人的正则,但是我就是移动后面加的147开头的号码,老是不行,所以我找了好久,找了个写的很全的

希望大家用的到,自行复制吧。


/**
 * 手机号验证
 */
public static boolean isPhoneNumberValid(String phoneNumber) {
   return isMobileExact(phoneNumber);

}
/**
 * 验证手机号(精确)
 *
 * @param string 待验证文本
 * @return {@code true}: 匹配<br>{@code false}: 不匹配
 */
public static boolean isMobileExact(String string) {
    return isMatch(REGEX_MOBILE_EXACT, string);
}

/**
 * 正则:手机号(精确)
 * <p>移动:134(0-8)135136137138139147150151152157158159178182183184187188</p>
 * <p>联通:130131132145155156175176185186</p>
 * <p>电信:133153173177180181189</p>
 * <p>全球星:1349</p>
 * <p>虚拟运营商:170</p>
 */
public static final String REGEX_MOBILE_EXACT = "^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|(147))\\d{8}$";


/**
 * string是否匹配regex
 *
 * @param regex  正则表达式字符串
 * @param string 要匹配的字符串
 * @return {@code true}: 匹配<br>{@code false}: 不匹配
 */
public static boolean isMatch(String regex, String string) {
    return !StringUtils.isEmpty(string) && Pattern.matches(regex, string);
}

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场