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

如何用正则表达式提取字符串纯字母部分,排除括号内容与字母数字组合?

提取纯字母单词并排除括号内容与字母数字组合

解决步骤

  1. 移除括号及内部内容
    先用正则替换掉所有括号及其内部的字符,避免无关内容干扰后续提取:

    df['cleaned'] = df['description'].str.replace(r'\([^)]*\)', '', regex=True)
    
  2. 提取纯字母独立单词
    使用带负向断言的正则,匹配仅由字母组成、且后面不紧跟数字的完整单词,以此排除"AUS52"这类字母数字组合中的字母部分:

    df['desc'] = df['cleaned'].str.findall(r'\b[a-zA-Z]+(?!\d)\b').apply(' '.join)
    

完整代码

df['desc'] = df['description'].str.replace(r'\([^)]*\)', '', regex=True).str.findall(r'\b[a-zA-Z]+(?!\d)\b').apply(' '.join)

效果验证

针对示例字符串 "AERONAUTICAL MOBILE (OR) AUS52 AUS57 AUS58 AUS101",执行代码后,df['desc'] 的结果为 "AERONAUTICAL MOBILE"。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 13:06:17