我想删除反斜杠,我读过你可以使用
Str.replace('\\', '')
我也试过
re.sub(r'\\', '',text)
然而两者都不适合我。我想知道是否有人可以帮助我找出问题所在。
text = ['with General Atlantic, Newman\'s Own Foundation, The Pershing Square Foundation, Rockefeller Philanthropy Advisors, and Echoing Green announced a three-year partnership which will invest']
text.replace('\\','')
我仍然得到'纽曼自己的基金会'
澄清: 我试图用连续的单词来获得单词,其中首字母大写,如专有名词。反斜杠将这个正则表达式从捕获纽曼自己的东西中搞砸了。所以似乎删除反斜杠不是最好的主意? R'\ B(?
我在ipython notebook
中打印文本时收到反斜杠答案 0 :(得分:7)
文本不包含要删除的反斜杠。文本中的反斜杠实际上逃脱了撇号。
如果你试试print text[0]
,你会得到一个输出:
with General Atlantic, Newman's Own Foundation, The Pershing Square Foundation, Rockefeller Philanthropy Advisors, and Echoing Green announced a three-year partnership which will invest
没有反斜杠。
你得到反斜杠的原因是可能是因为它返回了表示。 [可能因为即使python shell也没有返回反斜杠,除非你明确调用repr(text[0])
函数,至少不是你的情况。 ]
如果你想从表示中删除那个转义的反斜杠并将其转换回字符串(虽然我觉得这样做没有意义)你可以试试这个:
repr(text[0]).replace('\\','')[1:-1]
编辑:使用正则表达式时,将您的r'some文本转换为str(r'some text')。这应该有用。