【发布时间】:2017-10-24 19:14:32
【问题描述】:
我有一个列表和 3 个字符串。我想在字符串中搜索列表变量。
str1 = 'lol cry'
str2 = 'lol'
str3 = 'cry'
l1 = ['lol', 'cry']
for wo in l1 :
if re.match(r"^"+wo+"$|\s+wo+$", str1, re.M|re.I):
print "yes"
我的正则表达式是错误的。我想在| 条件中添加“wo”作为变量。但我的代码将它作为一个字符串。如果我将 str1、str2、str3 传递给我的正则表达式,它必须返回 yes。
【问题讨论】:
-
我没有得到你想要做的。您能否将您的问题连同一些示例输入和输出一起重写?
-
当然是;您在引号中包含了
wo,这与第一次出现时它是一个单独的变量不同。r"^" + wo + "$|\s+" + wo + "$" -
@chepner 不过,这仍然与
str1不匹配。 -
@StefanPochmann 我只是指出
wo没有被用作变量。
标签: python regex python-2.7