java判断是否手机号
时间: 2024-01-29 13:10:18 浏览: 20
以下是Java判断是否为手机号的示例代码:
```java
import java.util.regex.Pattern;
public class PhoneNumberValidator {
public static boolean isPhoneNumber(String input) {
String regex = "^1[3456789]\\d{9}$";
return Pattern.matches(regex, input);
}
public static void main(String[] args) {
String phoneNumber = "13812345678";
if (isPhoneNumber(phoneNumber)) {
System.out.println("是手机号");
} else {
System.out.println("不是手机号");
}
}
}
```
相关问题
Java判断手机号码是否存在
你好!可以使用正则表达式来判断一个字符串是否符合手机号码的格式。
例如,下面的代码演示了如何使用正则表达式来判断手机号码是否有效:
```
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PhoneNumberValidator {
private static final String PHONE_NUMBER_PATTERN = "^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])\\d{8}$";
private static Pattern pattern = Pattern.compile(PHONE_NUMBER_PATTERN);
public static boolean validate(String phoneNumber) {
Matcher matcher = pattern.matcher(phoneNumber);
return matcher.matches();
}
}
```
使用方法:
```
boolean isValid = PhoneNumberValidator.validate("13800138000");
if (isValid) {
System.out.println("手机号码有效");
} else {
System.out.println("手机号码无效");
}
```
希望这个示例对你有帮助!
java 正则判断是否为手机号
可以使用如下的正则表达式来判断是否为手机号:
```
String pattern = "^1[3-9]\\d{9}$";
String phoneNumber = "13888888888";
boolean isMatch = phoneNumber.matches(pattern);
System.out.println(isMatch); // 输出 true
```
解释:
- `^` 表示字符串的开始
- `1` 表示以 1 开头
- `[3-9]` 表示第二位的数字在 3~9 之间
- `\\d{9}` 表示后面跟着 9 个数字
- `$` 表示字符串的结尾
这个正则表达式可以匹配以 1 开头,第二位为 3~9 的十一位数字,即符合手机号的格式。