日期:2014-05-17  浏览次数:20754 次

一个字符串参数替换的方法!求助
有一串字符转格式为:中文+${1}+中文或者${N} 例如:我和${1}去打${2} 怎么将他替换成我和#p_1#去打#p_2#

${N}为参数 可能有多个数字大小不用逐级递增也就是说:我和${2}去打${1}:或者:我和${1}去打${3}这样的格式都是可以的 求大神指点用JAVA

------解决方案--------------------
	public static void main(String[] args) {
String str = "我和${1}去打${2} ";
str = str.replaceAll("\\$\\{(\\d+)\\}", "#p_$1#");
System.out.println(str);
}

------解决方案--------------------
引用:
惭愧啊!你一下子就解决了 我这还在想怎么循环来替换!哎!假如又得反过来替换勒比如 将我和我和#p_1#去打#p_2#  :替换成 :我和${1}去打${2}  

		public static void main(String[] args) {
String str = "我和#p_1#去打#p_2#";
str = str.replaceAll("#p_(\\d+)#", "\\$\\{$1\\}");
System.out.println(str);
}