加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 消息格式的更好替代品

发布时间:2020-12-14 19:15:39 所属栏目:Java 来源:网络整理
导读:我有一串以下格式 Select * where {{0} rdfs:label "Aruba" } limit 10 现在我想用一些新文本替换{0},但问题是消息格式由于第一个大括号而无法解析字符串.我知道如果我使用'{它会逃避它,但问题是我有大量这种类型的字符串,我不能手动添加大括号之前和之后的

我有一串以下格式

Select * where {{0} rdfs:label "Aruba" } limit 10

现在我想用一些新文本替换{0},但问题是消息格式由于第一个大括号而无法解析字符串.我知道如果我使用'{‘它会逃避它,但问题是我有大量这种类型的字符串,我不能手动添加大括号之前和之后的单引号.即使我编写了一个函数来执行此操作,它也会转义占位符{0}的大括号.

它们是消息格式的更好替代品,例如ruby字符串插值.
我只想要一种方法来编写一个字符串模板,我可以用新的字符串替换某些部分

最佳答案
较新的Java版本具有java.util.Formatter及其类似printf的方法. (它们也有一些分散在整个API中的变体,如String.format和PrintStream.printf).

你会写的

String some_text = "Hello";
String pattern = "Select * where {%s rdfs:label "Aruba" } limit 10";
String replaced = String.format(pattern,some_text);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读