jave输入手机号,通过正则表达式,判断您输入的手机号是否合法,输出正确或者不正确
时间: 2023-06-05 07:47:36 浏览: 174
Java使用正则表达式验证手机号和电话号码的方法
在Java中,可以使用正则表达式对手机号进行格式验证。一个有效的手机号应该满足以下条件:11位数字,以1开头,第二位为3、4、5、6、7、8、9中的一个数字。
首先,需要导入Java的正则表达式库import java.util.regex.*,然后使用Pattern和Matcher两个类来实现对手机号的匹配。
具体代码如下:
```java
import java.util.regex.*;
public class PhoneNumTest {
public static void main(String[] args) {
String phoneNum1 = "13812345678";
String phoneNum2 = "12345678901";
// 定义电话号码正则表达式
String pattern = "^1[3456789]\\d{9}$";
// 编译正则表达式
Pattern r = Pattern.compile(pattern);
// 创建Matcher对象
Matcher m1 = r.matcher(phoneNum1);
Matcher m2 = r.matcher(phoneNum2);
// 进行匹配
if (m1.matches()) {
System.out.println(phoneNum1 + "是一个有效的手机号码");
} else {
System.out.println(phoneNum1 + "不是一个有效的手机号码");
}
if (m2.matches()) {
System.out.println(phoneNum2 + "是一个有效的手机号码");
} else {
System.out.println(phoneNum2 + "不是一个有效的手机号码");
}
}
}
```
上述代码中,首先定义了一个电话号码的正则表达式。这个正则表达式使用了"^1[3456789]\\d{9}$"的格式,表示必须以数字1开头,第二位为3、4、5、6、7、8、9中的一个数字,后面跟着9位数字。其中,\\d表示任意数字。
然后,使用Pattern类的compile()方法编译正则表达式,并创建了两个Matcher对象,分别用来匹配两个手机号码。
最后,通过Matcher对象的matches()方法进行匹配,如果匹配成功,输出"是一个有效的手机号码";如果匹配失败,输出"不是一个有效的手机号码"。
以上就是Java中基于正则表达式对手机号进行格式验证的方法。
阅读全文