java如何判断手机号码是11为且第一位不是0且不是+86的形式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何判断手机号码是11为且第一位不是0且不是+86的形式相关的知识,希望对你有一定的参考价值。
不用正则表达式写
参考技术A 写在前面:最好还是用正则表达式,简单易懂,易于维护===================================
//这个方法判断是不是合法的手机号码
public boolean isPhoneNumber(String phoneNumber)
//手机号码长度
int phoneLength=phoneNumber.length();
//第一位是不是0
String phoneOne=phoneNumber.substring(0,1);
//是不是 +86形式
int is86=phoneNumber.indexOf("+86");
//是纯数字 并且长度等于11 并且第一位不是0 并且 不包含+86
return isNumeric(phoneNumber)&&phoneLength==11&&!phoneOne.equals("0")&&is86==-1;
//这个方法判断字符串是不是纯数字
public static boolean isNumeric(String str)
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() )
return false;
return true;
追问
那如何使用正则表达式呢??这个没学过。。
本回答被提问者采纳JS怎么通过身份证号码获取出生年月日并判断出生年月格式是不是正确
参考技术A身份证号总共18位,最后一位可能是字母X。
1-6位是地区码,7-10位是出生年份,11-12是出生月份,13-14是出生日期,15-18我也不知道也是有意义的。
通过JavaScript正则表达式就可以大致判断身份证是否合法。
以上是关于java如何判断手机号码是11为且第一位不是0且不是+86的形式的主要内容,如果未能解决你的问题,请参考以下文章
在C#widows窗体中如何设置textbox只能输入数字和小数点且第一位必须是数字?