StringJava中是否有任何替换机制,我可以在其中传递带有文本的对象,并在出现字符串时替换它。 例如,文本为:
String
Hello ${user.name}, Welcome to ${site.name}.
我拥有的对象是"user"和"site"。我想${}用对象的等效值替换内部给定的字符串。这与替换速度模板中的对象相同。
"user"
"site"
${}
使用StringSubstitutorApache的共享文本。
StringSubstitutor
https://commons.apache.org/proper/commons- text/
它将为您(及其开源…)
Map<String, String> valuesMap = new HashMap<String, String>(); valuesMap.put("animal", "quick brown fox"); valuesMap.put("target", "lazy dog"); String templateString = "The ${animal} jumped over the ${target}."; StringSubstitutor sub = new StringSubstitutor(valuesMap); String resolvedString = sub.replace(templateString);