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

Python Pandas:如何删除字符串中_004_及其之前的内容?

DataFrame字符串截取方案

我拥有包含如下内容的DataFrame:

524_004_SoEx
67hh_004_Mont
yh88_004_BurS
1243gt_004_Pogr_st

需要删除包括_004_在内的所有前面内容,最终得到:

SoEx
Mont
BurS
Pogr_st

尝试使用str.split方法但未成功,请问最简单的实现方法是什么?

下面提供几种简单可行的实现方式,选顺手的用就行:

方法一:正确使用str.split拆分

你之前用str.split没成功应该是没选对拆分后的取值逻辑,直接按_004_拆分后取最后一段即可:

df['目标列名'] = df['目标列名'].str.split('_004_').str[-1]

原理很直白:把每个字符串按_004_切成前后两段,直接取后面那段就是你要的结果。

方法二:正则提取目标内容

用str.extract直接匹配并提取_004_之后的所有内容,逻辑更直观:

df['目标列名'] = df['目标列名'].str.extract(r'_004_(.*)')[0]

正则表达式里,_004_是固定匹配的分隔符,(.*)用来捕获它后面的所有字符,提取出来就是最终需要的内容。

方法三:替换掉前面的冗余内容

用str.replace把从开头到_004_的所有内容替换为空字符串,一步到位:

df['目标列名'] = df['目标列名'].str.replace(r'.*_004_', '', regex=True)

这里.*_004_会匹配字符串开头到_004_的全部内容,替换为空后就剩下后面的目标文本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 01:33:11