gpt4 book ai didi

java - 在java中使用动态变量解析文本

转载 作者:行者123 更新时间:2023-11-29 05:58:03 24 4
gpt4 key购买 nike

我需要解析文本,并将变量放入其中。类似的东西:

lorem ${var} dolor sit amet consectetur adipiscing elit

结束将 String var = "ipsum" 替换为 ${var}

最简单的方法是什么?我将使用正则表达式和匹配器。但可能是 spring(或其他东西)已经具有此功能?

最佳答案

Java 标准类 MessageFormat相对接近你想要的,但它不处理任意占位符名称。如果需要,最好的选择就是正则表达式。如果您认为它们速度不快,我建议您在背弃它们之前进行测量。这是一个大纲:

final Map<String, String> vars = new HashMap<String, String>();
vars.put("var", "ipsum");
final String s = "lorem ${var} dolor sit amet consectetur adipiscing elit";
final Matcher m = Pattern.compile("\\$\\{(.*?)\\}").matcher(s);
final StringBuffer b = new StringBuffer(s.length());
while (m.find()) m.appendReplacement(b, vars.get(m.group(1)));
m.appendTail(b);
System.out.println(b);

关于java - 在java中使用动态变量解析文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11283465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com