应用场景:学员名称的第二个字用*代替,其他字正常显示,注:如果学员名称全为英文,则不用*号隐藏,显示全称(学员名称从子表中获取,要防止其为空,需要加一个判断,如果取出来字段不为空,执行,为空不执行,否则会报空指针异常)
controller中代码片段:注:list中已从数据库取得学员名称信息
for(int i=0; i<list.size(); i++){
Map<String, Object> map = list.get(i);
String caluname = (String) map.get("caluname");
if (Tools.isNotNull(caluname)) {
if (caluname.length()>=2) {
Pattern p = Pattern.compile("^[A-Za-z]+$");
Matcher m = p.matcher(caluname);
boolean isValid = m.matches();
if (!isValid) {
caluname = caluname.substring(0, 1) + "*" + caluname.substring(2, caluname.length());
map.put("caluname", caluname);
}
}
}
}