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

如何从带逗号的单个字符串中移除类似(x)的特定特殊字符模式?

问题原因

  • 原有第一行正则r'[^A-Za-z ]'会删除所有非字母、空格的字符,包括需要保留的逗号、斜杠等符号,不符合需求可直接删除。
  • 原有第二行正则存在两处缺陷:
    • 强制匹配括号前的空格,无法命中Calm/Peaceful(5)这类括号前无空格的场景
    • .*为贪婪匹配规则,会从第一个左括号直接匹配到整段字符串的最后一个右括号,导致中间内容被错误删除

解决方案

使用非贪婪匹配规则,同时兼容括号前有无空格的场景,完整代码如下:

df['col'] = df['col'].fillna('').astype(str).str.replace(r'\s*\(.*?\)', '', regex=True)

如果可确定括号内仅为数字,可使用更精准的正则避免误删其他合法带括号内容:

df['col'] = df['col'].fillna('').astype(str).str.replace(r'\s*\(\d+\)', '', regex=True)

效果验证

对示例输入Brash (7), Confident (7), Street-Smart (6), Calm/Peaceful(5)处理后,可直接得到目标输出Brash, Confident, Street-Smart, Calm/Peaceful。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 13:18:00