java隐藏手机号中间四位和隐藏邮箱
实现隐藏号码以及隐藏邮箱,类似于滴滴打车的那种模式。
在最近的项目中使用到了该功能,去年实现该功能的时候使用了第三方,或者sql查询的时候可以把结果替换,但是做的时候特别的繁琐麻烦,接下来给大家推荐使用正则的方式实现(特么的简单)
1、电话号码隐藏(134****6599)
/**
* 电话号码隐藏中间四位数
*/
public static void main(String[] args) {
String phone = "13497256599";
String hiddenPhone = phone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
System.out.println(hiddenPhone);
}
2、邮箱隐藏(1****9@qq.com)
/**
* 邮箱只显示@前面的首位跟末位
*/
public static void main(String[] args) {
String email = "1349725659@qq.com";
String hiddenEmail = email.replaceAll("(\\w?)(\\w+)(\\w)(@\\w+\\.[a-z]+(\\.[a-z]+)?)",
"$1****$3$4");
System.out.println(hiddenEmail);
}
$1,$2分别匹配第一个括号和第二个括号中的内容。
!注:是不是特别简单的一逼,我也觉得特简单。
还没有评论,来说两句吧...