擅长:python、mysql、java
<p>请尝试以下操作:</p>
<pre><code>import re
s = "Server: myserver.mysite.com\r\nAddress: 111.122.133.144\r\n\r\nName: myserver.mysite.com\r\nAddress: 123.144.412.111\r\nAliases: alias1.myserver.mysite.com\r\n\t myserver.mysite.com\r\n\r\n"
l = re.findall(r'\S+', s.split('Aliases: ')[1])
print(l)
</code></pre>
<p>印刷品:</p>
<pre><code>['alias1.myserver.mysite.com', 'myserver.mysite.com']
</code></pre>
<p><strong>解释</strong></p>
<p>首先,我们将字符串分成两部分,并用<code>s.split('Aliases: ')[1]</code>保留第二部分。这将计算为“别名:”后面的字符串部分</p>
<p>接下来,我们将<code>findall</code>与正则表达式一起使用:</p>
<pre><code>\S+
</code></pre>
<p>这将匹配一个或多个非空格字符的所有连续字符串</p>
<p>但在这种情况下,这可以更简单地完成,而无需使用正则表达式:</p>
<pre><code>s = "Server: myserver.mysite.com\r\nAddress: 111.122.133.144\r\n\r\nName: myserver.mysite.com\r\nAddress: 123.144.412.111\r\nAliases: alias1.myserver.mysite.com\r\n\t myserver.mysite.com\r\n\r\n"
l = s.split('Aliases: ')[1].split()
print(l)
</code></pre>