擅长:python、mysql、java
<p>一种方法是使用regex,在下面的模式中,我使用<a href="http://www.regular-expressions.info/lookaround.html" rel="nofollow">positive look-around</a>匹配<code>startTc:TC5\n</code>和<code>\nendTc:TC5</code>之间的字符串,然后可以用<code>\n</code>分割结果:</p>
<pre><code>>>> s="""startTc:TC9
...
... Client-1
... IPAddress:10.203.205.111
... Port:22
... endTc:TC9
...
...
... startTc:TC5
... Client-2
... IPAddress of Client-2:10.203.205.112
... Port:23
... endTc:TC5
... """
>>> re.search(r'(?<=startTc:TC5\n).*(?=\nendTc:TC5)',s,re.DOTALL).group(0).split('\n')
['Client-2', 'IPAddress of Client-2:10.203.205.112', 'Port:23']
</code></pre>
<p>请注意,如果要从文件中读取此字符串,则需要在<code>re.search</code>函数中使用<code>open('file_name').read()</code>而不是<code>s</code></p>