电话号码正则表达式java
时间: 2023-07-11 08:59:39 浏览: 44
以下是匹配中国大陆手机号码的正则表达式:
```
String regex = "^1[3456789]\\d{9}$";
```
解释:
- `^` 表示匹配字符串开头
- `1` 表示数字 1
- `[3456789]` 表示 3、4、5、6、7、8、9 中的任意一个数字
- `\\d{9}` 表示匹配 9 个数字
- `$` 表示匹配字符串结尾
使用示例:
```
String phoneNumber = "13812345678";
if (phoneNumber.matches("^1[3456789]\\d{9}$")) {
System.out.println("匹配成功");
} else {
System.out.println("匹配失败");
}
```
相关问题
java正则表达式匹配电话号码
以下是一个简单的 Java 正则表达式,可以用于匹配标准的 11 位电话号码:
```java
String pattern = "^1\\d{10}$";
```
这个正则表达式的含义是:
- `^` 表示匹配字符串的开始位置
- `1` 表示必须以数字 1 开头
- `\\d{10}` 表示后面必须跟 10 个数字
- `$` 表示匹配字符串的结束位置
完整的 Java 代码:
```java
import java.util.regex.*;
public class Main {
public static void main(String[] args) {
String phoneNumber = "13812345678";
String pattern = "^1\\d{10}$";
boolean isMatch = Pattern.matches(pattern, phoneNumber);
System.out.println(isMatch);
}
}
```
输出结果为 `true`,表示匹配成功。如果输入的电话号码不符合要求,输出结果为 `false`。
座机和电话号码的正则表达式
以下是座机和电话号码的正则表达式:
1. 座机号码正则表达式
```java
String regex = "^(\\(\\d{3,4}-)|\\d{3.4}-)?\\d{7,8}$";
```
2. 手机号码正则表达式
```java
String regex = "^1[3|4|5|7|8][0-9]\\d{8}$";
```
其中,座机号码正则表达式的解释如下:
- ^:匹配字符串的开始位置。
- (\\(\\d{3,4}-)|\\d{3.4}-):匹配区号,其中\\(表示左括号,\\d{3,4}表示3或4个数字,-表示“-”,|表示或,\\d{3.4}表示3或4个数字。
- ?:表示前面的表达式出现0次或1次。
- \\d{7,8}:表示7或8个数字。
- $:匹配字符串的结束位置。
手机号码正则表达式的解释如下:
- ^:匹配字符串的开始位置。
- 1:匹配数字1。
- [3|4|5|7|8]:匹配3、4、5、7、8中的任意一个数字。
- [0-9]:匹配0-9中的任意一个数字。
- \\d{8}:表示8个数字。
- $:匹配字符串的结束位置。