如何替换字符串中的最后一个单词

Bit*_*map 3 java string

有谁知道如何替换字符串中的最后一个单词.

目前我在做:

someStr = someStr.replace(someStr.substring(someStr.lastIndexOf(" ") + 1), "New Word");
Run Code Online (Sandbox Code Playgroud)

上面的代码替换了字符串中单词的每一次出现.

谢谢.

aio*_*obe 9

您可以像这样"从头开始"创建一个新字符串:

someStr = someStr.substring(0, someStr.lastIndexOf(" ")) + " New Word";
Run Code Online (Sandbox Code Playgroud)


另一种选择(如果你真的想使用"替换":)就是这样做的

someStr = someStr.replaceAll(" \\S*$", " New Word");
Run Code Online (Sandbox Code Playgroud)

replaceAll使用正则表达式,\S*$表示空格,后跟一些非空格字符,后跟字符串结尾.(也就是说,替换最后一个空格后的字符.)

  • @Bitmap,api文档是你的朋友!你用`yourString.substring(0,16)`来做. (2认同)