Joeyos's Blog Software Engineer

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

2019-01-17
Quan Zhang

中国移动: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;
}

Similar Posts

下一篇 爬虫环境配置

Comments