JAVA字符串占位符替换
JAVA字符串占位符替換??
如果有字符串 “我是{0},我來自{1},今年{2}歲。 請問怎樣用String的內置方法用替換掉字符串的占位符:比如“我是中國人,我來自北京,今年22歲”。
(1)JDK 中有正好有這功能:java.text.MessageFormat
而 java.text.MessageFormat 正好用的是 {0}, {1},所以String str = MessageFormat.format("我是{0},我來自{1},今年{2}歲", "中國人", "北京", "22");
MessageFormat.format 方法從 JDK 5 開始支持變參,可以直接用逗號添加參數。
(2)String str="我是{0},我來自{1},今年{2}歲";
str = str.replace("{0}", "中國人");
str = str.replace("{1}", "北京");
str = str.replace("{2}", "22");
System.out.println(str);
(3) public static void main(String[] args){
?????? String str="我是{0},我來自{1},今年{2}歲";
?????? String[] arr={"中國人","北京","22"};
?????? System.out.println(fillStringByArgs(str, arr));
??? }
????
??? private static String fillStringByArgs(String str,String[] arr){
??????? Matcher m=Pattern.compile("\\{(\\d)\\}").matcher(str);
??????? while(m.find()){
??????????? str=str.replace(m.group(),arr[Integer.parseInt(m.group(1))]);
??????? }
??????? return str;
??? }
總結
以上是生活随笔為你收集整理的JAVA字符串占位符替换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最大岛屿 第八届
- 下一篇: 【JEECG技术博文】JEECG表单配置