以下是一个Java编写的手机号校验工具类的示例代码:

public class PhoneValidator {
    private static final Pattern PHONE_PATTERN = Pattern.compile(
            '(\+\d{1,3}( )?)?(\d{3,4})( )?(\d{7,8})(-(\d{3,}))?');

    public static boolean isValid(String phoneNumber) {
        Matcher matcher = PHONE_PATTERN.matcher(phoneNumber);
        return matcher.matches();
    }
}

该工具类使用正则表达式来验证手机号格式是否正确。正则表达式包括以下几个部分:

  • '(\+\d{1,3}( )?)?':表示国际区号,可选,格式为+数字,数字个数最多为3,后面可以跟空格。
  • '(\d{3,4})':表示区号,必须为3或4位数字。
  • '( )?':表示区号后面的空格,可选。
  • '(\d{7,8})':表示电话号码,必须为7或8位数字。
  • '(-(\d{3,}))?':表示分机号,可选,格式为-数字,数字个数至少为3。

isValid方法中,首先创建一个Matcher对象,使用正则表达式来匹配手机号。如果匹配成功,则返回true,否则返回false

Java 手机号码校验工具 - 正则表达式验证

原文地址: https://www.cveoy.top/t/topic/lFdO 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录