You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中如何替换字符串格式路径的首个文件夹名称

你写的正则存在几个问题:

  • 正则首尾的/是部分语言正则字面量的写法,Java的replaceAll、replaceFirst方法接收的正则字符串不需要加这对分隔符
  • ^锚点写在了/之后,无法匹配字符串开头位置,导致整个规则匹配不到任何内容
  • 贪婪匹配规则+会匹配到最后一个斜杠为止,不符合只取第一段路径的需求

正确实现方案(基于String正则实现)

使用replaceFirst方法适配单一场景性能更优,写法如下:

String myString = "/folder1/folder2/file.txt";
String newString = myString.replaceFirst("^/[^/]+", "/newFolder");
// 输出结果:/newFolder/folder2/file.txt

正则规则说明:

  • ^/ 匹配字符串开头的第一个斜杠
  • [^/]+ 匹配所有非斜杠的字符,也就是第一个斜杠后的首个路径段

如果你的路径可能存在没有前导斜杠的情况,可以调整正则为^/?[^/]+,适配前导斜杠可选的场景。


内容的提问来源于stack exchange,提问作者rmf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 23:36:02