如何通过在python中添加变量来重用模式
我试图通过简单地更改模式中的索引(例如,L1,L2…)来重用多个模式,而不是创建多个模式,但我不知道如何用“I”替换模式中的变量。我的程序是检查每行中的三个模式,如果有任何字符串与三个模式中的一个匹配,则增加计数。 我从下面开始,但不能完成。有人知道怎么做吗? 谢谢如何通过在python中添加变量来重用模式,python,Python,我试图通过简单地更改模式中的索引(例如,L1,L2…)来重用多个模式,而不是创建多个模式,但我不知道如何用“I”替换模式中的变量。我的程序是检查每行中的三个模式,如果有任何字符串与三个模式中的一个匹配,则增加计数。 我从下面开始,但不能完成。有人知道怎么做吗? 谢谢 您希望模式列表中包含字符串,而不是对其格式方法的引用,然后您希望对每个字符串调用format方法,将迭代变量传递给该方法。未测试的代码: patterns = ['Test\(L{0}\)ABCDE', 'Te
您希望模式列表中包含字符串,而不是对其
格式
方法的引用,然后您希望对每个字符串调用format方法,将迭代变量传递给该方法。未测试的代码:
patterns = ['Test\(L{0}\)ABCDE',
'Test\(L{0}\)EFIGH',
'Test\(L{0}\)IJKLM',
]
for i in range(1,20):
expression = "|".join(pattern.format(i) for pattern in patterns)
count = sum(1 for line in myfile if re.search(expression, line))
请告诉我们您在哪里实际使用
模式
列表。
patterns = ['Test\(L{0}\)ABCDE',
'Test\(L{0}\)EFIGH',
'Test\(L{0}\)IJKLM',
]
for i in range(1,20):
expression = "|".join(pattern.format(i) for pattern in patterns)
count = sum(1 for line in myfile if re.search(expression, line))