「java判断手机号码」java判断手机号码的正则表达式

博主:adminadmin 2023-01-22 11:30:08 766

今天给各位分享java判断手机号码的知识,其中也会对java判断手机号码的正则表达式进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

求java代码判断手机号是不是移动号

这个你要根据移动和其他号码不同的地方 , 也就是开头三位数来判断啊

可以将手机号用字符来表示

然后用String的 startsWith("150") 方法来判断 , 当然如果这样的话 , 你需要搜集移动号码的所有可能性 , 然后用 || 逻辑或 放在一起

或者你也可以把所有移动手机号所属的前三位 放到一个数组或者集合中 , 比如{"150","158"}

然后把需要判断的手机号 截取前三位 , 判断是否在集合或者数组中

java如何判断手机号码是11为且第一位不是0且不是+86的形式

写在前面:最好还是用正则表达式,简单易懂,易于维护

===================================

//这个方法判断是不是合法的手机号码

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;

}

java编程实现自定义异常判断一个手机号码的合法性

用正则判断,

 /**

     * 验证手机号码格式是否正确

     * @param mobiles

     * @return  true 表示正确  false表示不正确

     */

    public static boolean isMobileNum(String mobiles) {

        Pattern p = Pattern.compile("^((13[0-9])|(15[0-9])|(18[0-9]))\\d{8}");

        Matcher m = p.matcher(mobiles);

        return m.matches();

    }

当然手机号码好像还有17开头的,对应的正则改一下就好

"^((13[0-9])|(15[0-9])|(18[0-9])|(17[0-9]))\\d{8}"

然后在你的代码里面调用这个方法,如果结果为false,就throw new MyException(“手机号码格式不正确”)一个异常。

异常定义可以去继承Exception

/**

 * Created by Kevin on 2015/3/30.

 */

public class MyException extends Exception{

    private String msg;

    public MyException(String msg) {

        super(msg);

        this.msg = msg;

    }

    @Override

    public String getMessage() {

        return msg;

    }

}

JAVA 判断号码是手机还是固话

/**

* 验证是否是手机号码

*

* @param str

* @return

*/

public static boolean isPhone(String str) {

if (ValidationUtils.isEmpty(str)) {

return false;

}

Pattern pattern = Pattern.compile("^(1[3,4,5,7,8][0-9])\\d{8}$");

Matcher matcher = pattern.matcher(str);

boolean b = matcher.matches();

return b;

}

/**

* 是否是座机电话号码

*

* @param str

* @return

*/

public static boolean isFixedLine(String str) {

if (ValidationUtils.isEmpty(str)) {

return false;

}

Pattern pattern = Pattern

.compile("^([0-9]{3}-?[0-9]{8})|([0-9]{4}-?[0-9]{7})$");

Matcher matcher = pattern.matcher(str);

boolean b = matcher.matches();

return b;

}

如何快速判断一个手机号码的运营商是移动还是联通或电信?

可以先看号段,联通已经放号的号段有:130、131、132、155、156、166、175、176、185、186、145、146号段,但携入联通的号码,号码没有改变,也属于联通用户。

java判断手机号码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java判断手机号码的正则表达式、java判断手机号码的信息别忘了在本站进行查找喔。