java 正则匹配过滤固话号码
时间: 2023-09-27 20:08:33 浏览: 47
以下是一个过滤固话号码的 Java 正则表达式示例:
```java
String pattern = "(\\d{3,4}-)?\\d{7,8}";
String phoneNum = "021-12345678";
boolean isMatch = phoneNum.matches(pattern);
if (isMatch) {
System.out.println("匹配成功");
} else {
System.out.println("匹配失败");
}
```
上述正则表达式可以匹配类似于 "021-12345678" 或 "12345678" 这样的固定电话号码。其中,"(\\d{3,4}-)?" 表示匹配 3 到 4 位数字加上一个横杠,这部分可选;"\\d{7,8}" 表示匹配 7 到 8 位数字。
你可以根据自己的需求调整正则表达式的规则,来适应不同格式的固话号码。
相关问题
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`。
java正则匹配斜杠
以下是Java正则匹配斜杠的例子:
1. 匹配普通斜杠
```java
String input = "http://www.example.com/path/";
boolean isMatch = input.matches(".*/path/.*");
System.out.println("是否匹配: " + isMatch); // 输出:是否匹配: true
```
2. 匹配转义后的斜杠
```java
String input = "C:\\Program Files\\Java";
boolean isMatch = input.matches("C:\\\\Program Files\\\\Java");
System.out.println("是否匹配: " + isMatch); // 输出:是否匹配: true
```