java正则验证手机号码

 Java 中可以使用正则表达式验证手机号

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class PhoneNumberValidator {

    // 手机号码的正则表达式
    private static final String PHONE_NUMBER_REGEX = "^1[34578]\\d{9}$";

    public static void main(String[] args) {
        // 测试手机号码
        String phoneNumber = "12345678901";
        // 校验手机号码是否合法
        boolean isValid = validatePhoneNumber(phoneNumber);
        // 打印结果
        System.out.println("Is " + phoneNumber + " a valid phone number? " + isValid);
    }

    /**
     * 校验手机号码是否合法
     *
     * @param phoneNumber 要校验的手机号码
     * @return 如果手机号码合法则返回true,否则返回false
     */
    public static boolean validatePhoneNumber(String phoneNumber) {
        // 创建手机号码正则表达式的模式
        Pattern pattern = Pattern.compile(PHONE_NUMBER_REGEX);
        // 使用模式匹配手机号码
        Matcher matcher = pattern.matcher(phoneNumber);
        // 返回匹配结果
        return matcher.matches();
    }
}

在这个示例中,我们编写了一个静态方法 validatePhoneNumber,用于验证手机号。该方法接受一个字符串参数 phoneNumber,然后使用正则表达式 ^1[34578]\\d{9}$ 来检查是否符合手机号的规则

该表达式的意思是

  • ^ 表示字符串的开头。
  • 1 表示手机号码开头必须是数字 1。
  • [34578] 表示第二个数字只能是 3、4、5、7、8 中的一个。
  • \\d{9} 表示后面需要跟着 9 个数字。
  • $ 表示字符串的结尾。

我们使用 Pattern 类的 compile 方法将正则表达式编译成一个模式。然后,我们使用 Matcher 类的 matches 方法将手机号码与该模式进行匹配。最后,我们返回 matches 方法的结果,表示手机号码是否符合正则表达式的规则

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值