我需要从字符串列表中删除URL(仅替换为http),但某些URL中包含反斜杠(\)。我在网上搜索,发现\是Python中的转义字符。 Stackoverflow答案我发现没有帮助我的任务。
s = 'Future Of Education http://twitter.com/A6y2s9Hyys\xa0 Some right, some wrong.'
re.sub(r'http\S+', 'http', s)
我得到的结果是Future Of Education http\xa0 Some right, some wrong.
而不是我想要的Future Of Education http Some right, some wrong.
所以我认为问题是我找不到处理字符串反斜杠的方法?
有什么建议吗?谢谢!
答案 0 :(得分:1)
\xa0
不是URL的一部分,它是unicode非中断空格字符。您可以将正则表达式更新为http://\S+
,以从网址末尾删除\xa0
:
s = 'Future Of Education http://twitter.com/A6y2s9Hyys\xa0 Some right, some wrong.'
print(re.sub(r'http://\S+', 'http', s))
输出:
Future Of Education http Some right, some wrong.
感谢@ctwheels获取更新的正则表达式。