从python字符串中删除\ n

时间:2016-09-04 17:03:45

标签: python parsing strip

我用漂亮的汤刮了一个网页。 我试图摆脱一个'\n'字符,尽管我尝试了什么,它仍然没有消除。

到目前为止我的努力:

wr=str(loc[i-1]).strip()
wr=wr.replace(r"\[|'u|\\n","")
print(wr)

输出:

    [u'\nWong; Voon Hon (Singapore, SG
Kandasamy; Ravi (Singapore, SG
Narasimalu; Srikanth (Singapore, SG
Larsen; Gerner (Hinnerup, DK
Abeyasekera; Tusitha (Aarhus N, DK

如何消除[u'\ n?我做错了什么?

完整代码为here

2 个答案:

答案 0 :(得分:1)

你需要转义换行符(双“\”):

rep=["[","u'","\\n"]
for r in rep:
    wr=wr.replace(r,"")

这与@ cricket_007的答案相同,但是,答案的第二部分对我不起作用。据我所知,str.replace()不支持这种正则表达式查找。

答案 1 :(得分:0)

您需要转义反斜杠或使用原始字符串。否则,它是换行符,而不是文字\n

另外,我不认为beautifulsoup正在输出unicode字符串。您将python中的字符串表示形式视为u'blah'

您不需要删除要删除的元素列表。表达式可以是

r"\[|'u|\n"