Java生成正则表达式对电话号码脱敏
时间: 2023-08-01 17:10:36 浏览: 102
java 使用正则表达式验证电话号码的格式
5星 · 资源好评率100%
以下是使用 Java 生成正则表达式对电话号码进行脱敏的示例:
```java
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class PhoneNumberDesensitizer {
public static String desensitizePhoneNumber(String phoneNumber) {
// 将电话号码中间部分的数字替换为*
String desensitizedNumber = phoneNumber.replaceAll("(?<=\\d{3})\\d(?=\\d{4})", "*");
return desensitizedNumber;
}
public static void main(String[] args) {
String phoneNumber = "12345678901";
String desensitizedNumber = desensitizePhoneNumber(phoneNumber);
System.out.println(desensitizedNumber); // 输出: 123****8901
}
}
```
在上述示例中,我们使用了正则表达式 `"(?<=\\d{3})\\d(?=\\d{4})"` 来匹配电话号码中间的单个数字,并使用 `*` 替换。其中,`(?<=\\d{3})` 表示前面必须是3个数字,`(?=\\d{4})` 表示后面必须是4个数字。
请根据您的具体需求和应用场景进行相应的调整。
阅读全文