1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| package com.jilongda.applet.utils;
|
| /**
| * 脱敏工具类
| */
| public class RptUtils {
| private static final String SYMBOL = "*";
|
| /**
| * 脱敏
| * @param str 待脱敏字符串
| * @param left 左边保留多少位
| * @param right 右边保留多少位
| * @return 脱敏结果,除左右外,其余字符将被替换为*
| */
| public static String around(String str, int left, int right){
| if (str == null || (str.length() < left + right +1)){
| return str;
| }
| String regex = String.format("(?<=\\w{%d})\\w(?=\\w{%d})", left, right);
| return str.replaceAll(regex, SYMBOL);
| }
|
| /**
| * 正则表达式实现金额数据脱敏
| * @param money
| * @return
| */
| public static String getMoney(String money){
| //保留0个数到0个结束
| return around(money,0,0);
| }
| }
|
|