我有一组两个带空格的名字。我想对“乔治布什”或“巴拉克奥巴马”进行正则表达式搜索。在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”替换空格字符?
答案 0 :(得分:4)
你已经拥有了。反斜杠很特殊,必须在表示中进行转义(并且应在字符串中进行转义),但你真的做有" \ s"。请尝试打印字符串。