前言:commons-langbao中有很多方便的工具,无需我们自己去实现,能够节省很多开发时的问题:

1、工具包,引入依赖,jDK8对应的版本如下:

<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.5</version>
</dependency>

2、代码:

import org.apache.commons.lang3.StringUtils;
 /**
* 姓名脱敏
* @param userName
* @param index
* @return
*/
public static String hideName(String userName,int index) {
if (StringUtils.isBlank(userName)) {
return "";
}
String name = StringUtils.left(userName, index);
return StringUtils.rightPad(name, StringUtils.length(userName), "*");
} /**
* 身份证脱敏
* @param cardNo
* @param index
* @param end
* @return
*/
public static String hideCerCardNum(String cardNo,int index,int end) {
if (StringUtils.isBlank(cardNo)) {
return "";
}
return StringUtils.left(cardNo, index).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(cardNo, end), StringUtils.length(cardNo), "*"), "***"));
} /**电话脱敏
*
* @param phoneNum
* @param end
* @return
*/
public static String hidePhone(String phoneNum,int end) {
if (StringUtils.isBlank(phoneNum)) {
return "";
}
return StringUtils.leftPad(StringUtils.right(phoneNum, end), StringUtils.length(phoneNum), "*");
}
/**
* 邮箱脱敏
* @param email
* @return
*/
public static String email(String email) {
if (StringUtils.isBlank(email)) {
return "";
}
int index = StringUtils.indexOf(email, "@");
if (index <= 1){
return email;
}
else{
return StringUtils.rightPad(StringUtils.left(email, 1), index, "*").concat(StringUtils.mid(email, index, StringUtils.length(email)));
} } /**
* 银行卡号脱敏
* @param cardNum
* @return
*/
public static String bankCard(String cardNum) {
if (StringUtils.isBlank(cardNum)) {
return "";
}
return StringUtils.left(cardNum, 4).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(cardNum, 4), StringUtils.length(cardNum), "*"), "******"));
}

最新文章

  1. [LeetCode] Find Right Interval 找右区间
  2. swift 3.0 协议笔记
  3. Linux下cp -rf总是提示覆盖的解决办法
  4. Linux 查看 删除进程
  5. GCD工作单元
  6. 数据结构(启发式合并):HNOI 2009 梦幻布丁
  7. 详解CSS设置默认字体样式
  8. eclipse安装svn插件,在输入url后,一直卡在in progress界面不懂。
  9. RedHat9.0下载地址
  10. #postman接口测试系列:基本操作总结
  11. 运行期以索引获取tuple元素-C++11之1
  12. .NET使用ServerManager获取网站物理路径
  13. CSS之IE浏览器的hasLayout,IE低版本的bug根源
  14. 洗礼灵魂,修炼python(69)--爬虫篇—番外篇之feedparser模块
  15. Confluence 6 用自带的用户管理
  16. ionic访问odoo 11接口
  17. 自学Zabbix11.5 Zabbix SNMP监控实例
  18. 三步解决阿里云绑定公网IP地址失败解决方案
  19. 【MOOC EXP】Linux内核分析实验五报告
  20. Hibernate核心对象

热门文章

  1. ElasticSearch的基本用法与集群搭建 good
  2. wpf中的倒影效果实现
  3. 【 D3.js 入门系列 --- 9.3 】 弦图生产
  4. Python抓取框架:Scrapy的架构
  5. Effective JavaScript Item 38 调用父类的构造函数在子类的构造函数
  6. cocos2d-x 显示触摸操作(单击显示效果浪潮,对于视频演示)-绩效转型
  7. Nucleus PLUS系统架构和组件
  8. jquery通过索引获取元素
  9. install windows service
  10. &lt;转&gt;C# 动态创建DataTable