[英]How can I remove a newline character or empty string from a list when using readline() with Python?
[英]How can I remove a newline character in a string in python
我使用BeautifulSoup提取了一个网站,然后得到了文本需求。 问题是它在我需要删除的文本中具有“ \\ n”字符。
示例输出文本:
\\ n我以这部电影的预告片为准,想在\\分钟120分钟的通俗易懂的线条,无心的情节以及那种使\\“邮递员”成为最恶毒的电影错误\\ n的恶作剧行为\\ n下车我们这个时代。 但是我很震惊。\\ n震惊地发现了由科斯特纳(Costner)主演的电影,它吸引了观众的灵魂。 震惊的是阿什顿·库彻(Ashton Kutcher)可以扮演如此严肃的角色。 震惊的是这部由主演的电影实际上参与并捕捉了自己的情感。 自从《罗宾汉》问世以来,我还没有看到过这个Costner:充满\\ n深度和复杂的情感。 库彻(Kutcher)似乎已经调整了他在《蝴蝶效应》中扮演的严肃角色。 这两位演员以严肃认真,专注的态度进入了这部电影,在我认为这是我今年看过的最好的电影之一中透出了光芒。 不,这不是一部\\ n奥斯卡值得的电影。 这不是一部史诗,也不是一部深刻的社会评论\\ n电影。 相反,它是一个有关简单主题的故事,以某种方式阐明\\ n,使该受众具有比想像更高的同理心。 我认为这就是出色的电影摄制,这部作品给我留下了深刻的印象。 好极了!\\ n
我尝试了以下方法删除新行。
方法1-正则表达式
x = review_text.get_text()
y = re.sub(r'(\n)','',x)
方法2-rstrip
x = review_text.get_text()
x.rstrip()
这两种方法都不适合我。
当我使用拆分
x = review_text.get_text()
print(x.split("\n"),"\n\n")
输出如下
['\\ n我想提前看完这部电影,以为我打算\\在120分钟的通俗易懂的线条,无心的情节以及那种使\\“邮递员”成为最恶毒的电影之一的\\ n恶作剧\\ n我们时代的电影失误。 但是我很震惊。\\ n震惊地发现了由科斯特纳(Costner)主演的电影,它吸引了观众的灵魂。 震惊的是阿什顿·库彻(Ashton Kutcher)可以扮演如此严肃的角色。 震惊的是这部由主演的电影实际上参与并捕捉了自己的情感。 自从《罗宾汉》问世以来,我还没有看过这本科斯特纳:充满\\ n深度和复杂的情感。 库彻(Kutcher)似乎已经调整了他在《蝴蝶效应》中扮演的严肃角色。 这两位演员以严肃认真,专注的态度进入了这部电影,这在我认为是我今年看过的最好的电影之一中得到了体现。 不,这不是一部\\ n奥斯卡值得的电影。 这不是一部史诗级电影,也不是一部深刻的社会评论电影。 相反,它是一个有关简单主题的故事,以某种方式阐明\\ n,使该受众具有比想像更高的同理心。 这就是我认为出色的电影制作所能为我留下的深刻印象。 好样的!\\ n']
我应该怎么做才能从文本中删除新行。
谢谢。
您确定它是'\\n'
字符而不是'\\\\n'
两个字符序列吗? 如果为'\\ n',则x.rstrip()
应该可以工作,否则请尝试x.replace('\\\\n','')
如果s是,则字符串如:
\nNo, its not an\nOscar worthy movie. It's not an epic, or a profound social commentary\nfilm. Rather, its a story about a simple topic, illuminated in a way\nthat brings that audience to a higher level of empathy than thought\npossible. That's what I think good film-making is and I for one am\nthroughly impressed by this work. Bravo!\n
然后s.strip()将删除尾随和前导空格,包括换行符:
No, its not an\nOscar worthy movie. It's not an epic, or a profound social commentary\nfilm. Rather, its a story about a simple topic, illuminated in a way\nthat brings that audience to a higher level of empathy than thought\npossible. That's what I think good film-making is and I for one am\nthroughly impressed by this work. Bravo!
要删除所有其他\\ n,请将其替换为“”,或将其完全删除
s.replace("\n", "").strip()
No, its not an Oscar worthy movie. It's not an epic, or a profound social commentary film. Rather, its a story about a simple topic, illuminated in a way that brings that audience to a higher level of empathy than thought possible. That's what I think good film-making is and I for one am throughly impressed by this work. Bravo!
您应该可以使用x=x.replace("\\n", "")
取出换行符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.