JAVA 字符串替换占位符
1 MessageFormat.format()
code
public static void main(String[] args) {
String a= "123";
String b= "321";
String c= "c";
System.out.println(MessageFormat.format(" {0} {1} {2} {3}", a, b,"",c));
System.out.println(MessageFormat.format(" ''{0}'' '{1}' {2} {3}", a, b,"",c));
}
运行结果
123 321 c
# '{1}'不转换
'aaa' '{1}' 321 c
2 StrSubstitutor
依赖包
org.apache.commons
commons-lang3
3.7
code
public static void main(String[] args) {
Map map = new HashMap();
map.put("code","123321");
map.put("product","xxxaaa系统");
String str1 = "您正在登录${product},验证码为:${code},五分钟内有效,如非本人操作请忽略。";
StrSubstitutor sb = new StrSubstitutor(map);
String content = sb.replace(str1);
System.out.println(content);
}
输出
您正在登录xxxaaa系统,验证码为:123321,五分钟内有效,如非本人操作请忽略。