首页 > 编程语言 >JAVA关于国际手机号的校验

JAVA关于国际手机号的校验

时间:2025-01-21 17:29:40浏览次数:3  
标签:swissNumberProto 手机号 phoneUtil 校验 isVail boolean JAVA

背景 : 做跨境业务的时候,会有全球手机号的校验,这个时候正则几乎没用了,只能借助第三方

maven坐标

        <dependency>
            <groupId>com.googlecode.libphonenumber</groupId>
            <artifactId>libphonenumber</artifactId>
            <version>8.12.10</version>
        </dependency>

 这里附上工具类

public class PhoneUtils {

    public static boolean validatePhone(String swissNumberStr, String defaultRegion) {

        boolean isVail;

        PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
        try {
            // 解析号码
            PhoneNumber swissNumberProto = phoneUtil.parse(swissNumberStr, defaultRegion);
            // 校验号码
            isVail = phoneUtil.isValidNumber(swissNumberProto);

        } catch (Exception e) {
            return false;
        }
        return isVail;
    }
}

入参有一个是手机号,一个是国家的简称 比如 : 198****589  CN 

校验还是很准的,之前被美国手机号卡了很久

标签:swissNumberProto,手机号,phoneUtil,校验,isVail,boolean,JAVA
From: https://blog.csdn.net/weixin_63588620/article/details/145287038

相关文章

  • java过滤器实现全局的简繁体转化
    背景:因为是国外项目,有些国家和地区希望默认给繁体,也希望谷歌抓包抓源代码中是繁体推广首先使用到的是opencc库,值得一提的是前端也有,这样就不会有库对库的冲突了maven仓库<dependency><groupId>com.github.houbb</groupId><artifac......
  • java业务逻辑判断
       在平时的业务开发中,空指针出现的频率是比较高的bug,在出现空指针的时候,很多小伙伴都是习惯性地加!=null的判断,这个bug就能解决。当代码中频繁出现!=null的判断时,我们就会很头疼,能不能高效、优雅地做这个判断?答案当然是可以的。1.在做!=null的判断时,请停顿一下,......
  • 【转】[JavaScript] textContent 用法
    转自:kimi.ai在JavaScript中,textContent是一个用于操作DOM元素文本内容的属性。它允许你获取或设置指定元素及其子元素的文本内容。以下是关于textContent的详细用法和特点:1.获取文本内容textContent可以获取指定元素及其所有子元素的文本内容,忽略HTML标签。例如:HTM......
  • 【转】[JavaScript] try...catch 语法
    转自:kimi.ai在JavaScript中,try...catch是一种用于捕获同步错误的语法结构。它允许你尝试执行一段代码,并在代码运行过程中捕获可能出现的异常(错误),从而避免程序因为未处理的错误而崩溃。通过try...catch,你可以对错误进行处理,例如记录错误信息、提供默认值或执行替代逻辑。基本......
  • 识别两个表格文件,根据手机号进行匹配相同行并按照需要字段输出
    python代码#-*-coding:utf-8-*-#encoding:utf-8fromflaskimportFlask,render_template,request,send_file,jsonifyimportos,requestsimportpandasaspdfromdatetimeimportdatetime,timedeltaimporttime,jsonfromlogimportloggingimportthreadi......
  • Java多线程循环list集合
    1.Java多线程基本概念在开始之前,先简单了解一下Java的多线程。如果一个应用程序在执行多个任务时,每个任务都是独立的,那么我们就可以把这些任务放在多个线程中并发执行。Java通过Thread类和Runnable接口提供了创建和管理线程的技术。1.1创建线程创建线程最常见的方法有两......
  • 基于Java的学生选课系统设计与实现 毕业设计源码13931
    摘要在当今快节奏的高等教育环境中,学生选课系统的重要性愈发凸显。曾经,学生在选课时需要排长队、填表格,繁琐而低效。为解决这一难题,本研究设计并实现了一套智能化学生选课系统。这一系统不仅为学生提供了便捷的选课服务,也为教务管理带来了新的机遇。通过系统的开发,我旨在提......
  • 请解释下href="javascript:void(0)"和href="#"的区别是什么?
    在前端开发中,href="javascript:void(0)"和href="#"都是常见的用于阻止链接默认行为的技巧,但它们之间有一些重要的区别。功能:href="javascript:void(0)":这个语句会执行JavaScript函数void(0),该函数返回undefined,从而阻止链接的默认行为(即跳转到新页面或重新加载当前......
  • 「youlai-boot」入门篇:从0到1搭建 Java、Spring Boot、Spring Security 企业级权限管
    ......
  • 招高级Java一枚(广州)英语口语好可以是中级
    岗位职责  1、参与自研SAAS平台项目的设计与开发工作,包括数据库设计、编码和单元测试等工作2、独立完成某一业务模块整体方案,包括:计划、流程、业务影响范围、相关技术选择,保证所负责系统的安全性、稳定性及可扩展性3、深入了解业务知识,并能敏锐发现业务痛点4、有中大......