更换空间" "用\ s使用.replace()

时间:2014-05-27 23:56:03

标签: python regex

我有一组两个带空格的名字。我想对“乔治布什”或“巴拉克奥巴马”进行正则表达式搜索。在this示例后,我尝试了这个,它获得了所需的输出

p = "(George\sBush|Barack\sObama)"
s = "recent Presidents George Bush and Barack Obama"
print re.findall(p,s) #Prints George Bush and Barack Obama

但是,现在我想从列表["George Bush", "Barack Obama"]转到上面显示的模式。

我试过了:

for l in list:
     p = p + "|" + l
     p = p.strip("|")
p = ('.{75}(' + p + ').{75}').replace(" ", "\s")

但它给出了:'.{75}(George\\sBush|Barack\\sObama).{75}'

如何用“\ s”而不是“\\ s”替换空格字符?

1 个答案:

答案 0 :(得分:4)

你已经拥有了。反斜杠很特殊,必须在表示中进行转义(并且在字符串中进行转义),但你真的有" \ s"。请尝试打印字符串。