如何在pandas中删除指定列字符串左侧固定格式的数字和符号
解决方案
直接使用如下代码即可实现需求:
df_json['key'] = df_json['key'].str.replace(r'^\d+\:- ', '', regex=True)
规则说明
- 正则表达式
r'^\d+\:- '的匹配逻辑:
^限定匹配字符串的最开头,避免误删内容中间出现的符合规则的字符\d+匹配1个及以上的数字,不管前缀是1位数还是多位数都能覆盖\:-精确匹配数字后面跟着的固定前缀内容
- 旧写法问题说明:你之前用strip+取下标的方式,strip是按单个字符匹配删除而非匹配整段前缀,取下标[1]的容错性极低,很容易出现索引越界错误,当前用str.replace加正则的方案适配性更强。
处理后效果
你的key列会输出预期内容:
- Profile 1
- Archetype Realist*in
- RIASEC Code: R- Realistic
- Subline Deine Stärke? Du bleibst dir selber treu.
- Copy Dein Erfolg basiert auf deiner praktischen Ver...
内容的提问来源于stack exchange,提问作者ojp
相关产品推荐
相关产品推荐

