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

正则表达式移除括号内文本(支持括号截断、嵌套括号场景)

移除括号及内部内容的正则实现

核心正则表达式

开启全局匹配模式,将匹配到的内容替换为空字符串即可完成裁剪:

\((?:[^()]|\((?R)\))*?\)?|\)

要求适配说明

  • 惰性捕获规则:模式中使用*?惰性量词,匹配时优先命中最短符合条件的片段,不会出现跨括号段的过度匹配问题。
  • 嵌套括号支持:通过(?R)递归引用整个正则规则,可自动识别任意层级的嵌套括号结构,无论多少层(...(...)...)格式的嵌套都能完整圈定括号范围,不会提前截断匹配内容。
  • 残缺括号兼容:
    • 模式末尾的\)?将闭括号设为可选匹配项,遇到缺失闭括号的截断场景时,会自动匹配从开括号起始到连续括号段结束的所有内容,不会残留开括号及内部残缺片段
    • 单独的\)分支会匹配所有无对应开括号的孤立闭括号,正确处理缺失开括号的截断场景

代码使用示例(JavaScript)

function stripBrackets(text) {
  // 必须开启全局匹配修饰符g
  const bracketPattern = /\((?:[^()]|\((?R)\))*?\)?|\)/g;
  return text.replace(bracketPattern, '');
}

典型场景验证

  • 普通括号场景:输入商品(已售罄)下架 → 输出商品下架
  • 多层嵌套场景:输入通知(全员(含外包)需参会)已发送 → 输出通知已发送
  • 缺失闭括号场景:输入备注信息(待补充 → 输出备注信息
  • 缺失开括号场景:输入数据异常)需复核 → 输出数据异常需复核
  • 混合场景:输入A模块(B功能(C子功能))已上线)D模块待开发 → 输出A模块已上线D模块待开发

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 18:57:18