正则表达式 - Java 字符串中{ }占位符替换方面的问题
本文介绍了正则表达式 - Java 字符串中{ }占位符替换方面的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
怎么使用map中的key,替换字符串中{}中的占位符? 代码如下,请大神赐教……
String str = "我是{name},我来自{city},今年{age}岁";
Map<String, String> mapstring = new HashMap<String, String>();
mapstring.put("name", "小明");
mapstring.put("age", "15");
mapstring.put("city", "北京");
……………………
System.out.println("我是小明,我来自北京,今年15岁");
解决方案
不太清楚为什么有这样的需求, 不过下面的代码应该满足需求:
public class Test {
public static void main(String[] args) throws Exception {
String str = "我是{name},我来自{city},今年{age}岁";
Map<String, String> mapstring = new HashMap<>();
mapstring.put("name", "小明");
mapstring.put("age", "15");
mapstring.put("city", "北京");
for (Map.Entry<String, String> entry : mapstring.entrySet()) {
str = str.replace("{" + entry.getKey() + "}", entry.getValue());
}
System.out.println("我是小明,我来自北京,今年15岁");
System.out.println(str);
}
}
这篇关于正则表达式 - Java 字符串中{ }占位符替换方面的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文