给出以下内容:
字符串:"{Dog} loves {Cat}"
,
RegExp:{([^}]+)}
,
数组:["Scooby Doo", "Sylvester"]
如何轻松实现:"Scooby Doo loves Sylvester"
答案 0 :(得分:1)
您可以用{}
子字符串替换大括号内的每个子字符串,当该子字符串传递给str.format
方法时,该子字符串用作占位符。该列表需要“连接”到一系列变量(称为 unpacking ),因此,在将列表传递给*
之前,需要前缀运算符str.format
。
所以,代码看起来像
import re
s = "{Dog} loves {Cat}"
l = ["Scooby Doo", "Sylvester"]
print(re.sub(r'{[^{}]*}', '{}', s).format(*l))
# => Scooby Doo loves Sylvester
请参见Python demo。