擅长:python、mysql、java
<p>我是用手机写的,所以这不是一个完整的解决方案,关键是:</p>
<pre><code>import re
Docid=re.compile("^ *\d+ +<DOCID>")
Location=re.compile("^ *\d +>?(. +)/")
Lines={}
for line in file:
if re.match(Docid,line):
Lines={}
print line
else:
loc=re.findall(Location, line)[0]
if loc not in Lines.keys():
print line
Lines[loc] = True
</code></pre>
<p>基本上,它检查它的每一行不是一个新的docid。如果不是,则尝试读取位置,并查看是否已读取。如果没有,则打印位置并将其添加到位置列表tead中。你知道吗</p>
<p>如果有新的docid,它将重置最后一个读取位置。你知道吗</p>