java - 如何使用 string.replaceAll 在某个单词后更改所有内容
问题描述
我有以下字符串:http://localhost:somePort/abc/soap/1.0
我希望字符串看起来像这样:http://localhost:somePort/abc
.
我想使用 string.replaceAll 但似乎无法正确使用正则表达式。我的代码如下所示:someString.replaceAll(".*\\babc\\b.*", "abc");
我想知道我错过了什么?正如许多解决方案所建议的那样,我不想拆分字符串或使用 .replaceFirst。
解决方案
使用 似乎更有意义substring
,但如果你必须使用replaceAll
,这里有一种方法。
你想/abc
用 just 替换它之后的所有东西/abc
。
string = string.replaceAll("/abc.*", "/abc")
如果你想更有辨别力,你可以在后面加上一个单词边界abc
,给你
string = string.replaceAll("/abc\\b.*", "/abc")
推荐阅读
- ruby-on-rails - 防止同一表的多个连接中的重复值
- encryption - iOS Swift - Virgil Security 用户已注册 - 未找到私钥
- r - 在 R 中创建一个包含总计的双向表
- python - 导入错误:从 Python 包导入时出现问题
- git - 为什么将新的分支指针推送到 Git 远程会导致拉取请求?
- node.js - 在节点谷歌云功能上提示/强制垃圾收集的任何方式
- serverless-framework - Serverless,将 ElasticSearch 部署到 AWS,“创建 elasticsearch 域并不稳定”
- ios - 从核心数据传递值
- javascript - 将异步 getJSON 数据推送到来自 2 次数组调用
- sql - 将数据从 CSV 插入 SQL Server 表时,如何解决算术溢出错误?