首页 > 解决方案 > 如何使用 string.replaceAll 在某个单词后更改所有内容

问题描述

我有以下字符串:http://localhost:somePort/abc/soap/1.0

我希望字符串看起来像这样:http://localhost:somePort/abc.

我想使用 string.replaceAll 但似乎无法正确使用正则表达式。我的代码如下所示:someString.replaceAll(".*\\babc\\b.*", "abc");
我想知道我错过了什么?正如许多解决方案所建议的那样,我不想拆分字符串或使用 .replaceFirst。

标签: javaregex

解决方案


使用 似乎更有意义substring,但如果你必须使用replaceAll,这里有一种方法。

你想/abc用 just 替换它之后的所有东西/abc

string = string.replaceAll("/abc.*", "/abc")

如果你想更有辨别力,你可以在后面加上一个单词边界abc,给你

string = string.replaceAll("/abc\\b.*", "/abc")

推荐阅读