怎么替换字符串

hjd1399 2012-10-15 09:27:06
有一个字符串向下面的那样
afdf{2},adf{3}dfsfdsf{5}

我怎么把{2},{3},{5}等这样的字符替换成别的文字,比如hellow
最终结果:afdfhellow,adfhellowdfsfdsfhellow
...全文
112 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Ade子夜 2012-10-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

引用 1 楼 的回复:
用正则表达式:

Java code

String str ="afdf{2},adf{3}dfsfdsf{5}";
String rStr=str.replaceAll("\\{\\d\\}", "hellow");
System.out.println(rStr);


这个有些还是实现不了,如当afdf{20},adf{30}dfsfdsf{……
[/Quote]
ding
Cactus_hxk 2012-10-15
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
用正则表达式:

Java code

String str ="afdf{2},adf{3}dfsfdsf{5}";
String rStr=str.replaceAll("\\{\\d\\}", "hellow");
System.out.println(rStr);
[/Quote]

这个有些还是实现不了,如当afdf{20},adf{30}dfsfdsf{50}或者比这更大的就不行,应该这样
System.out.println("afdf{200},adf{300}dfsfdsf{500}".replaceAll("\\{\\d{1,5}}", "hellow"));


我这个最大支持0-99999之间的数,如果你的需求比这个之间的数更大你可以改replaceAll("\\{\\d{1,5}}", "hellow"));
Cactus_hxk 2012-10-15
  • 打赏
  • 举报
回复

System.out.println("afdf{2},adf{3}dfsfdsf{5}".replaceAll("\\{\\d}", "hellow"));
前方 2012-10-15
  • 打赏
  • 举报
回复
正则比较简便,还是用上面的吧。
前方 2012-10-15
  • 打赏
  • 举报
回复
没错最简单的就是这样了,用的也比较多。
shenhua 2012-10-15
  • 打赏
  • 举报
回复
由于本人正则表达式学的不精,写个笨方法给你看一下。能实现你的功能。

List list=new ArrayList();
for(int i=0;i<10;i++)
{
list.add("{"+i+"}");
}
String str="afdf{2},adf{3}dfsfdsf{5}";
for(int j=0;j<list.size();j++)
{
str=str.replace(list.get(j).toString(), "hellow");
}
System.out.println(str);
2399 2012-10-15
  • 打赏
  • 举报
回复
用正则表达式:
String str ="afdf{2},adf{3}dfsfdsf{5}";
String rStr=str.replaceAll("\\{\\d\\}", "hellow");
System.out.println(rStr);

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧