目前是截止2019年6月最新,适配各种手机号,满足常见号码验证
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.lang3.StringUtils;
/** * @author tumuzhuang * 三大运营商号码均可验证(不含卫星通信1349) */
public class mobile {
/* 2019年1月16日已知(不含未知的,如有可以自行加入) 中国电信号段 133,149,153,173,174,177,180,181,189,199 中国联通号段 130,131,132,145,146,155,156,166,175,176,185,186 中国移动号段 134(0-8),135,136,137,138,139,147,148,150,151,152,157,158,159,165,178,182,183,184,187,188,198 上网卡专属号段(用于上网和收发短信,不能打电话) 如中国联通的是145 虚拟运营商 电信:1700,1701,1702 移动:1703,1705,1706 联通:1704,1707,1708,1709,171 卫星通信: 1349 未知号段:141、142、143、144、154 */
public static boolean isMobile(String str) {
Pattern p = null;
Matcher m = null;
boolean b = false;
String s2="^[1](([3|5|8][\\d])|([4][4,5,6,7,8,9])|([6][2,5,6,7])|([7][^9])|([9][1,8,9]))[\\d]{8}$";// 验证手机号
if(StringUtils.isNotBlank(str)){
p = Pattern.compile(s2);
m = p.matcher(str);
b = m.matches();
}
return b;
}
/** 测试 */
public static void main(String[] args) {
System.out.println("是正确格式的手机号:"+isMobile("18792996879"));
}
}
如果对你有帮助,请一定要帮忙点赞好评,给予创作的动力…
今天的文章java 手机号正则表达式验证分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/6804.html