欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java掩码的几种使用例举

程序员文章站 2024-02-26 14:00:52
java掩码 private static string namemask(string name) throws exception { if(name...

java掩码

 private static string namemask(string name) throws exception {
 if(name ==null)throw new exception("请输入要掩码的字符串");
 if(name.length()<=1) return name+"*";
 return name.replaceall("([\\u4e00-\\u9fa5]{1})(.*)", "$1"+createasterisk(name.length()-1));
 }
 private static string createasterisk(int len) {
 stringbuffer sb = new stringbuffer();
 for(int i=0;i<len;i++){
  sb.append("*");
 }
 return sb.tostring();
 }
/**
 * 对客户证件号码做掩码
 * 
 * */
 public static string maskcertid(string certid) throws exception
 {
 if(certid==null||certid.length()==0) return "";
 if(certid.length()==18)
 {
  string v = certid.substring(0,4);
  string end = certid.substring(certid.length()-4);
  return v+stringutils.repeat("*",8)+end;
 }
 else
  return "";
 }
/**
 * 对客户姓名做掩码
 * @throws jboexception 
 * */
 public static string maskusername(string username) throws exception
 {
 if(username==null||username.length()==0) return "";
 string v = username.substring(0,1);
 return stringutils.rightpad(v, username.length(),"*");//stringutils.rightpad方法做一个字符串右补齐
 }
/**
 * 对字符串进行脱敏处理
 * @param word 被脱敏的字符
 * @param startlength 被保留的开始长度 0代表不保留
 * @param endlength 被保留的结束长度 0代表不保留
 * @param pad 填充字符
 * */
 public static string wordmask(string word,int startlength ,int endlength,string pad)  {
 if(word==null) return stringutils.leftpad("", startlength+endlength,pad);
 if(word.length()<=startlength+endlength) return stringutils.leftpad("", startlength+endlength,pad);
 string startstr = "";
 string endstr = "";
 int padlength = 0;
 if(word.length()>startlength) startstr = stringutils.substring(word, 0,startlength);
 if(word.length()>startlength+endlength) endstr = stringutils.substring(word, word.length()-endlength);
 padlength = word.length()-startlength-endlength;
 return startstr + stringutils.repeat(pad, padlength)+endstr;
 }

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接