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

正则表达式需求:移除末尾非日期范围格式的括号内容

移除字符串末尾非日期格式括号内容的正则方案

需求回顾

仅移除位于字符串末尾、且不符合(\d{4}-\d{4})格式(括号内为四位数字日期范围)的括号()及其内容,同时保留末尾的合法日期括号,以及非末尾的所有括号内容。

正确正则表达式

\s*\((?!\d{4}-\d{4}\))[^)]*\)\s*$

正则拆解

  • \s*:匹配括号前的任意空白字符(空格、制表符等)
  • \(:匹配左括号
  • (?!\d{4}-\d{4}\)):否定前瞻断言,确保括号内不是四位数字-四位数字的合法日期格式
  • [^)]*:匹配括号内的任意非右括号字符(贪婪匹配至右括号)
  • \):匹配右括号
  • \s*:匹配括号后的任意空白字符
  • $:锚定字符串末尾,保证只匹配最后一段内容

替换效果验证

需要移除的场景

  • 输入:foo bar (blah) → 替换后:foo bar
  • 输入:foo bar (blah) blah (blah) → 替换后:foo bar (blah) blah

无需匹配的场景

  • 输入:some (blah) data → 括号不在末尾,无匹配
  • 输入:some date following (1920-1921) → 合法日期格式,否定前瞻生效,无匹配
  • 输入:some data (..) match (match) → 仅匹配末尾的 (match),替换后:some data (..) match
  • 输入:some data (1920-1977) → 合法日期格式,无匹配

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 06:13:06