I wrote a String class that masking username something like;
input --> Johny Holloway expecting output ---> J***y H***y
and its working.
However I like to change my code if user input name and surname less than 3 character
example; Name BR ---> B***R ; surName --> KL ---> K***L
How to change my code according to above example
My code is below;
public class MaskWords {
public String mask(String str) {
if (StringUtils.isBlank(str)) {
return str;
}
String out = "";
for (String d : str.split("\\s+")) {
String startChar = d.substring(0, 1);
String endChar = d.substring(d.length() - 1, d.length());
out = out + startChar + "***" + endChar + " ";
}
return out.trim();
}
public List<String> mask(List<String> str) {
List<String> maskedStringList = new ArrayList<>();
for (String stringToMask : str) {
maskedStringList.add(mask(stringToMask));
}
return maskedStringList;
}