java过滤固定号码以及小灵通
时间: 2023-08-09 17:00:57 浏览: 195
在Java中过滤固定号码以及小灵通可以通过正则表达式实现。首先,我们可以定义一个包含需要过滤的固定号码和小灵通号码的正则表达式。然后,使用Java的正则表达式匹配方法,将给定的号码与正则表达式进行匹配。
以下是一个示例代码:
```java
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class PhoneNumberFilter {
public static boolean isPhoneNumber(String number) {
String regex = "^0\\d{2,3}-?\\d{7,8}$"; // 正则表达式匹配固定电话号码
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(number);
return matcher.matches();
}
public static boolean isMobilePhoneNumber(String number) {
String regex = "^1[34578]\\d{9}$"; // 正则表达式匹配手机号码
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(number);
return matcher.matches();
}
public static void main(String[] args) {
String[] phoneNumbers = {"010-12345678", "021-87654321", "0571-98765432", "13912345678", "18887654321"};
for (String number : phoneNumbers) {
if (isPhoneNumber(number)) {
System.out.println(number + " 是固定电话号码");
} else if (isMobilePhoneNumber(number)) {
System.out.println(number + " 是手机号码");
} else {
System.out.println(number + " 不符合要求");
}
}
}
}
```
上述代码中,我们定义了两个方法 `isPhoneNumber` 和 `isMobilePhoneNumber`,分别用于判断给定的号码是否为固定电话号码和手机号码。使用正则表达式对号码进行匹配,如果匹配成功,则该号码符合固定电话号码或手机号码的规则。
在 `main` 方法中,我们定义了一个字符串数组 `phoneNumbers` 存放需要过滤的号码。通过循环遍历这些号码,并使用上述方法进行判断,最后打印结果。
需要注意的是,上述的正则表达式仅仅是一个示例,实际情况中要根据固定电话号码和小灵通号码的规则进行调整。
阅读全文