pandas字符串提取问题

问题遇到的现象和发生背景

提取指定字符串HLH或HLW前的数据(含该字符串)如下:
df['数据'] = ['我觉得和-HLH-1','我意思和他-HLW-16']
结果:
['我觉得和-HLH','我意思和他-HLW']

问题相关代码,请勿粘贴截图

暂无

运行结果及报错内容

暂无

我的解答思路和尝试过的方法

暂无

我想要达到的结果

['我觉得和-HLH','我意思和他-HLW']


df=pd.DataFrame({'数据':['我觉得和-HLH-1','我意思和他-HLW-16']})
df['数据']=df['数据'].str.extract(r'(.*HL[H|W])')
print(df)

这个是整的列表还是dataframe数据?

给个例子参考:

data = ['我觉得和-HLH-1','我意思和他-HLW-16']
new_data = []
for s in data:
    if s.find("HLH")>0:
        new_data.append(s[:s.find("HLH")+3])
    elif s.find("HLW")>0:
        new_data.append(s[:s.find("HLW")+3])
    else:
        new_data.append(s)
print(new_data)

img


不知道是否符合题意


df['数据'] = df['数据'].str.extract(r'(.*HL[H|W])', expand=True)