首先是有一串文本:
region42372,region42373,region42374,region42375,region42376,region42377,region42378,region42379,region42380,region42381,region42382,region42383
region42851,region42852,region42853,region42854
region47924,region47925,region47926,region47927,region47928,region47929,region47930,region47931,region47932,region47933,region479
region49003,region49004,region49005,region49006,region49007,region49008
egion49177,region49178,region49179,region49180,region49181,region49182,region49183,region49184,region49185,region49186,region49187,region49188,region49189,region49190,region49191
比如说我想要寻找一堆关键字符所在的行关键字符为【region2536,region42377,region47933,region49033,region27432,region491,region49177,region42373】
我试过用正则表达式,但是我只能是手动改变那个匹配字符,我想请问正则表达式是否能够实现循环更改匹配字符?
(以下是我单个匹配关键字符的代码)
import re
with open('test.txt','r') as fin: #我读取文本然后逐行匹配
for i in fin:
#print(y)
m = re.findall('(.*)region42373(.*)',i) #我在想这个region42373是否可以是一个列表然后递归上面的所有关键字符
print(m)
我在想这个是否可以把关键字符放在一个列表里面然后循环递归下一个关键字符,我试过把所有关键字符放在一个列表里面,但是出错了。
import re
a_list=['region56485','region56144','region65698','region65790']
with open('test.txt','r') as fin:
for i in fin:
#print(y)
for y in a_list:
m = re.findall('(.*)y(.*)',i) #我在想y在这里已经变成了一个字符y所以出错,但是我具体又不知道怎么修改
print(m)
请问有哪位朋友可以指教?