手机工具类 PhoneUtil

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


PhoneUtil


import org.apache.commons.lang3.StringUtils;

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

/**
 * @author ruansm
 * @date 2022/11/4
 */
public class PhoneUtil {

    private static final String VALID_REGEX = "^1[0-9]\\d{9}$";
    private static final String RETRIEVE_PHONE = "(1)([0-9])\\d{9}";
    private static final String DESENSITIVE_REGEX = "(\\d{3})\\d{4}(\\d{4})";

    public static boolean isValid(String phone){
        if (StringUtils.isBlank(phone)){
            return false;
        }
        Pattern p = Pattern.compile(VALID_REGEX);
        Matcher m = p.matcher(phone);
        return m.matches();
    }

    public static String desensitive(String phone){
        if(phone==null){
            return "";
        }
        String replacePhone = phone.replaceAll(DESENSITIVE_REGEX, "$1****$2");
        return replacePhone;
    }

    public static String clearPhone(String phone){
        if(phone==null){
            return "";
        }
        return phone.replaceAll(RETRIEVE_PHONE,"");
    }

}


1.手机号脱敏

    public static void main(String[] args) {
        System.out.println(PhoneUtil.desensitive("18523455506"));
        System.out.println(PhoneUtil.desensitive("18823455507"));
        System.out.println(PhoneUtil.desensitive("15623455508"));
    }

在这里插入图片描述

2.手机号是否有效

    public static void main(String[] args) {
        System.out.println(PhoneUtil.isValid("18855551234"));
        System.out.println(PhoneUtil.isValid("188555512345"));
        System.out.println(PhoneUtil.isValid("188555512"));
        System.out.println(PhoneUtil.isValid("1885555a234"));
    }

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值