Java函数实现校验字符串是否为合法手机号码
发布时间:2023-11-02 06:54:04
要校验一个字符串是否为合法手机号码,可以使用正则表达式来进行校验。以下是一个Java函数实现:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class PhoneNumberValidator {
public static boolean isValidPhoneNumber(String phoneNumber) {
// 创建一个正则表达式模式,用于匹配手机号码的格式
String regex = "^1[3456789]\\d{9}$";
// 将正则表达式编译为模式
Pattern pattern = Pattern.compile(regex);
// 创建一个匹配器,用于匹配输入的手机号码
Matcher matcher = pattern.matcher(phoneNumber);
// 检查手机号码是否匹配模式
return matcher.matches();
}
public static void main(String[] args) {
String phoneNumber = "13812345678";
if (isValidPhoneNumber(phoneNumber)) {
System.out.println(phoneNumber + " 是一个合法的手机号码");
} else {
System.out.println(phoneNumber + " 不是一个合法的手机号码");
}
}
}
在上述代码中,isValidPhoneNumber函数接受一个字符串参数phoneNumber并返回一个布尔值。在函数内部,我们使用正则表达式^1[3456789]\\d{9}$来匹配手机号码的格式。
解释一下正则表达式的含义:
- ^ 表示匹配字符串的开始位置
- 1 表示以数字1开头
- [3456789] 表示匹配一个数字3、4、5、6、7、8或9
- \\d{9} 表示匹配9个数字字符
- $ 表示匹配字符串的结束位置
所以,根据以上规则,一个合法的手机号码应以数字1开头,然后是3、4、5、6、7、8或9,紧接着是9个数字字符,总共11位数字。
在main函数中,我们调用isValidPhoneNumber函数来校验一个字符串是否是合法的手机号码,并打印相应的结果。
以上是一个简单的Java函数实现校验字符串是否为合法手机号码的方法,可以根据实际需求进行调整和扩展。
