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

Java字符串:替换所有指定字符及其后任意字符的实现方法

解决方法

在Java中,String.replaceAll()方法支持正则表达式匹配,刚好可以实现你的需求:匹配所有§字符及其紧随的任意单个字符,然后替换为空字符串。

基础实现代码

String original = "§a§b Text";
String processed = original.replaceAll("§.", "");
// 执行后processed的值为 " Text"

正则表达式说明

  • §:匹配字面量的§字符(该字符不属于正则元字符,无需转义)
  • .:匹配任意单个字符(默认不包含换行符)

如果你的字符串存在§位于行尾(后面无字符),或者需要匹配换行符后的字符,可以启用DOTALL模式,让.匹配包括换行在内的所有字符,写法如下:

String processed = original.replaceAll("(?s)§.", "");

这里的(?s)是正则内联标志,开启后.会匹配所有字符,包括换行。

如果需要处理单独的§(即§后面没有字符的情况也要去掉),可以把后面的字符设为可选:

String processed = original.replaceAll("§.?", "");

?表示前面的匹配项(这里是.匹配的任意字符)可以出现0次或1次,这样单独的§也会被替换掉。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 11:31:34