类似问题:Replacing part of string in python pandas dataframe
但是它不起作用!?你知道吗
帕纳斯23.4
给定以下df列:
Expression
XYZ&(ABC|DEF)
(HIJ&FTL&JKK)&(ABC|DEF)
(FML|AXY|AND)&(ABC|DEF)
我想剥离可能在每列中的子字符串。你知道吗
flag = '(ABC|DEF)'
andFlag = '&' + flag #the reasoning for doing this is that 'flag' may change
#Below are all different ways I have tried to achieve this, none have worked.
df['Expression'] = df['Expression'].replace(andFlag, '', regex=True)
df['Expression'] = df['Expression'].apply(lambda x: re.sub(andFlag, '', x))
df['Expression'] = df['Expression'].replace(to_replace=andFlag, value= '', regex=True)
df['Expression'] = df['Expression'].str.replace(andFlag, '')
df['Expression'] = df['Expression'].str.replace(andFlag, '', regex=True)
我试过所有这些函数,不管有没有regex=True
都没有用。你知道吗
预期产量:
Expression
XYZ
(HIJ&FTL&JKK)
(FML|AXY|AND)
我想弄明白这一点有点疯狂,它看起来是那么简单和直截了当。你知道吗
使用
str.replace
更重要的是,设置regex=False
进行文字匹配:括号和竖线是正则表达式中的特殊字符,因此如果要匹配这些字符,可以在前面添加反斜杠“\”,例如:
相关问题 更多 >
编程相关推荐