我应该使用什么方法来替换String中的文本

时间:2011-02-24 08:20:30

标签: java string replace

我有以下字符串:

str = "kishore kumar venkata"

我想用“kishore tamire venkata”替换这个字符串。

用于此的字符串方法是什么?有人可以解释替换程序吗?

2 个答案:

答案 0 :(得分:3)

使用方法(不足为奇)String.replace

str = str.replace("kumar", "tamire");

请注意,由于String是不可变的,原始字符串不会更改,并且该方法会返回修改后的字符串。

答案 1 :(得分:1)

对于简单替换,您可以使用String.replace(...),就像Péter已经建议的那样。但是,请注意,replace(...)也会导致子串kumar被替换为字符串:

"kishore kumaraa venkata"
         ^^^^^

如果您希望这种情况发生,您可以使用String.replaceAll(...)并提供正则表达式模式:

\bkumar\b

其中\b表示单词边界。

演示:

String str = "kishore kumaraa kumar venkata";
String rep = str.replaceAll("\\bkumar\\b", "tamire");
System.out.println(str+"\n"+rep);

将打印:

kishore kumaraa kumar venkata
kishore kumaraa tamire venkata