【发布时间】:2020-10-13 21:02:57
【问题描述】:
我有一个包含一些数据的数据框,并且想要替换字符串“| ']”。字符串是一个空格、一个管道、另一个空格和一个括号。
ID Stuff
0 a1 | ']
1 b2 xyz-456
我正在尝试:
df1['Stuff'].replace(to_replace=' | \']',value='', inplace=True, regex=True)
但它只删除字符串中的空格
ID Stuff
0 a1 |']
1 b2 xyz-456
转义管道会导致正则表达式不再匹配,并且输出中没有任何变化(在 PyCharm 中,转义时反斜杠变为橙色,但由于某种原因它不会在管道前面突出显示橙色):
df1['Stuff'].replace(to_replace=' \| \']',value='', inplace=True, regex=True)
【问题讨论】:
-
replace接受正则表达式。|有一个非常具体的正则表达式含义,所以你也想转义它。顺便说一句:如果您的字符串文字包含单引号,则可以对外部字符串使用双引号,从而无需转义单引号。 -
我怎样才能逃离管道?我在它前面添加了“\”,现在正则表达式根本不匹配,所以输出中没有任何变化
标签: python regex pandas replace pycharm