JAVA 字符串替换占位符
1 ()
- code
public static void main(String[] args) {
String a= "123";
String b= "321";
String c= "c";
((" {0} {1} {2} {3}", a, b,"",c));
((" ''{0}'' '{1}' {2} {3}", a, b,"",c));
}
- 运行结果
123 321 c
'aaa' '{1}' 321 c
2 StrSubstitutor
- 依赖包
<dependency>
<groupId></groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
- code
public static void main(String[] args) {
Map map = new HashMap();
("code","123321");
("product","xxxaaa系统");
String str1 = "您正在登录${product},验证码为:${code},五分钟内有效,如非本人操作请忽略。${a}";
StrLookup customLookup = new StrLookup() {
@Override
public String lookup(String key) {
// 如果 map 中有对应的键,则返回值;否则返回空字符串
return (key, "");
}
};
StrSubstitutor sb = new StrSubstitutor(customLookup);
String content = (str1);
(content);
}
- 输出
您正在登录xxxaaa系统,验证码为:123321,五分钟内有效,如非本人操作请忽略。
3. replace
public static void testReplace(String args[]) {
String text = "hello {user}, welcome to {place}!";
String user = "Lucy";
String place = "China";
String res = ("{user}", user).replace("{place}", place);
(res); // 输出 hello Lucy, welcome to China!
}