正则表达式验证合法电话号码

本文提供了一个Java方法用于验证中国移动、中国联通和中国电信的手机号码格式。通过正则表达式匹配,确保号码符合各运营商的标准号段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Github个人博客:https://joeyos.github.io

  • 中国移动:134/135/136/137/138/139/150/151/152/157/158/159/182/183/184/187/188/147/178/1705
  • 中国联通:130/131/132/155/156/185/186/145/175/176/1709
  • 中国电信:133/153/180/181/189/199/177/1700/1349
  • 首位为1,中间两位为(3、8加一个数)或者(5加非4的数)或者(7加5-8的数)或者(45、47、99),再加8位数字
  • 首位为1,中间三位为700或者705或者709,再加7位数字
public static boolean isTel(String s){
	/*
	中国移动
	134/135/136/137/138/139/150/151/152/157/158/159/182/183/184/187/188/147/178/1705
	中国联通
	130/131/132/155/156/185/186/145/175/176/1709
	中国电信
	133/153/180/181/189/199/177/1700/1349
	*/
	Pattern pattern= Pattern.compile("^([1]((([3]|[8])\\d{1}|([5][^4])|([7][5-8])|45|47|99)\\d{8}|(700|705|709)\\d{7}))?$");
	Matcher match=pattern.matcher(s);
	boolean bo = match.matches();
	return bo;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值