擅长:python、mysql、java
<p>在这种特定情况下,在解析之前甚至不需要将块分解为单独的部分。你可以一行一行地检查与你想要的信息类型的匹配。你知道吗</p>
<pre><code>out_lines = []
regexes = [
r'^-+$',
r'^MRT HEADER\s*$',
r'^\s*Timestamp:.*$',
r'^BGP4MP_MESSAGE_AS4\s*$',
r'^\s*Peer AS Number:.*$',
r'^\s*Local AS Number:.*$',
r'^\s*Peer IP Address:.*$',
r'^\s*Local IP Address:.*$',
]
with open('file.txt', 'r') as f:
for line in f:
for regex in regexes:
if re.match(regex, line):
out_lines.append(line)
break
with open('file.txt', 'w') as f:
f.write('\n'.join(out_lines))
</code></pre>