搜索txt文件以查找不同的关键字 - 然后分配给变量

时间:2016-09-04 19:37:22

标签: python file search keyword

我需要在txt文件中搜索格式为" i-0xxxyyyzzzz"的关键字。 - 其中xyz是不同的字母数字字符。 我想分配每个匹配的匹配。目前我可以得到:

  f = open("file.txt", "r")
searchlines = f.readlines()
f.close()
for i, line in enumerate(searchlines):
    if "i-0" in line:
        for l in searchlines[i:i+1]: print l,
        print

然而,这会打印整行,而不仅仅是关键字。

1 个答案:

答案 0 :(得分:0)

我建议使用正则表达式:

import re

token_regex = re.compile('i\-0[0-9a-z]*')
for line in open('file.txt'): // Note: 'r' is the default
   // You might find the token several times in the line
   matches = token_regex.findall(line)
   if matches:
     print '\n'.join(matches)

我不清楚你想对比赛做什么。我的例子将打印每行打印一个。另外,你可以拥有跨越两行的令牌吗?