【问题标题】:Python: Removing backslashes inside a string [duplicate]Python:删除字符串中的反斜杠[重复]
【发布时间】:2017-11-27 00:48:03
【问题描述】:

这里是 Python 新手,正在尝试掌握正则表达式。

我正在尝试从字符串中删除反斜杠。它是从 Reddit 中提取 cmets、清理它们并将它们变成一个长字符串的函数的一部分(或者,至少这是我的目标)。当我运行该函数时,文本带有一个额外的反斜杠,原始文本中有一个撇号,例如“已经好几年了”

我知道还有其他关于该主题的帖子,并且我已经尝试了生成的建议,.replace("\", "") 和 .replace("\\", "")。没运气。 .decode 也没有运气。

我显然错过了一些东西。有什么想法吗?

PS — 不相关,但是否可以将 .sub 子句与 .replace 子句组合起来,而不是将每个子句都放在一个新行上?

提前致谢!

list_reddit = [] 
subreddit = reddit.subreddit('politics') 
hot_python = subreddit.hot()
hot_python = subreddit.hot(limit=1)
for submission in hot_python:
    comments = submission.comments
    for comment in comments:
        reddit_text = comment.body
        nospaces = reddit_text.replace('\n',' ').replace('&#039', ' ')
        formatone = re.sub(r"http\S+", ' ', nospaces)
        formattwo = re.sub(r"https\S+", ' ', formatone)
        list_reddit.append(formattwo)
        onestring = ' '.join(list_reddit)

【问题讨论】:

  • 随便string.replace('\\','')
  • 哦,对不起,我在原帖中无意中提出了斜杠而不是反斜杠。我编辑了原文。但无论如何,您的评论是否意味着使用 string.replace 与 [randomname].replace 会有所不同?
  • 我的意思是字符串是一个变量
  • 谢谢!尽管我在发布之前已经尝试过,但我现在才让它工作所以..我相信你。

标签: python regex


【解决方案1】:

您应该在简单的引号中使用替换:

string.replace('\\','')

祝你好运!

【讨论】:

  • 谢谢!尽管我在发布之前已经尝试过,但我现在才让它工作所以..我相信你。
  • @jon-el: 给新手的建议:如果答案解决了您的问题,请点击旁边的大复选标记 (✓) 接受它,也可以选择投票(up-voting)至少需要 15 个声望点)。如果您发现其他答案有帮助,请给他们投票。接受和投票有助于未来的读者。请看【相关帮助中心文章】[1] [1]:stackoverflow.com/help/someone-answers
猜你喜欢
  • 2011-03-10
  • 2018-05-06
  • 1970-01-01
  • 2021-03-27
  • 1970-01-01
  • 2015-03-28
相关资源
最近更新 更多