JAVA字符串占位符替换
JAVA字符串占位符替换
如果有字符串 “我是{0},我来⾃{1},今年{2}岁。 请问怎样⽤String的内置⽅法⽤替换掉字符串的占位符:⽐如“我是中国⼈,我来⾃北京,今年22岁”。
(1)JDK 中有正好有这功能:MessageFormat
⽽ MessageFormat 正好⽤的是 {0}, {1},所以String str = MessageFormat.format("我是{0},我来⾃{1},今年{2}岁", "中国⼈", "北京", "22");
MessageFormat.format ⽅法从 JDK 5 开始⽀持变参,可以直接⽤逗号添加参数。
(2)String str="我是{0},我来⾃{1},今年{2}岁";
str = place("{0}", "中国⼈");
str = place("{1}", "北京");
str = place("{2}", "22");
System.out.println(str);
(3) public static void main(String[] args){
String str="我是{0},我来⾃{1},今年{2}岁";
java replace方法String[] arr={"中国⼈","北京","22"};
System.out.println(fillStringByArgs(str, arr));
}
private static String fillStringByArgs(String str,String[] arr){
Matcher m=Patternpile("\\{(\\d)\\}").matcher(str);
while(m.find()){
up(),arr[Integer.up(1))]);
}
return str;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论