java 正则判断手机号是不是192开头
时间: 2023-11-09 21:49:11 浏览: 151
使用Java正则表达式可以判断手机号是否以192开头。可以使用以下正则表达式进行匹配:^192\d{7}$。其中,^表示匹配字符串的开头,192表示要匹配的数字序列,\d表示匹配任意数字,{7}表示匹配前一个元素7次,$表示匹配字符串的结尾。
示例代码如下:
```java
String phoneNumber = "1921234567";
String regex = "^192\\d{7}$";
boolean isMatch = phoneNumber.matches(regex);
if (isMatch) {
System.out.println("手机号以192开头");
} else {
System.out.println("手机号不以192开头");
}
```
相关问题
java正则判断11位手机号码_Java正则表达式判断手机号的例子
Java正则表达式判断手机号的例子:
```java
public static boolean isPhoneNumber(String phone) {
String regex = "^1[3|4|5|6|7|8|9]\\d{9}$";
return Pattern.matches(regex, phone);
}
```
上面的代码中,使用了正则表达式 `^1[3|4|5|6|7|8|9]\\d{9}$` 来判断手机号是否合法。其中:
- `^` 表示字符串的开头
- `1` 表示手机号的第一位必须是1
- `[3|4|5|6|7|8|9]` 表示手机号的第二位必须是3、4、5、6、7、8或9中的一个
- `\\d{9}` 表示手机号的后9位必须是数字
- `$` 表示字符串的结尾
如果需要判断是否为11位手机号,可以稍微修改一下正则表达式,如下所示:
```java
public static boolean isElevenPhoneNumber(String phone) {
String regex = "^1[3|4|5|6|7|8|9]\\d{8}\\d$";
return Pattern.matches(regex, phone);
}
```
其中,`\d{8}\\d` 表示手机号必须是11位数字。
java正则校验手机号
可以使用如下正则表达式来校验手机号:
```java
String regex = "^1[3456789]\\d{9}$";
```
其中,`^` 表示匹配字符串的开头;`1` 表示必须以数字 1 开头;`[3456789]` 表示第二个字符必须是 3、4、5、6、7、8、9 中的一个;`\\d{9}` 表示后面必须跟着 9 个数字;`$` 表示匹配字符串的结尾。
以下是一个完整的示例代码:
```java
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) {
String regex = "^1[3456789]\\d{9}$";
String mobile1 = "13812345678";
String mobile2 = "12345678901";
Pattern pattern = Pattern.compile(regex);
Matcher matcher1 = pattern.matcher(mobile1);
Matcher matcher2 = pattern.matcher(mobile2);
System.out.println(matcher1.matches()); // 输出 true
System.out.println(matcher2.matches()); // 输出 false
}
}
```
输出结果为:
```
true
false
```
阅读全文