擅长:python、mysql、java
<p>您可以使用:</p>
<pre><code>match_rgx = 'Stream\s(//streams/gta.*?)\s'
result = re.findall(match_rgx, mystring)
</code></pre>
<p>默认情况下,操作符*是贪婪的,因此它将尝试捕获尽可能多的文本(例如:“//streams/gta mainline none”将匹配没有?)。但你只想要第二列,所以,用?操作符变得不贪婪,并在最小模式处停止,这里是在第一次出现\s(“//streams/gta”)时。你知道吗</p>
<p>希望这是清楚的,看看文档(<a href="https://docs.python.org/2/library/re.html#contents-of-module-re" rel="nofollow noreferrer">https://docs.python.org/2/library/re.html#contents-of-module-re</a>),如果不是。你知道吗</p>
<p>顺便说一句,你不必转义/,它不是一个特殊的字符。
如果不使用^或$,那么使用re.M标志是没有用的。你知道吗</p>
<p>编辑:由于你的编辑,如果你不想赶上发展,一些信息成为无用的。你知道吗</p>
<p>编辑2:没有看到你不想改变模式。在这种情况下,只需执行以下操作:</p>
<pre><code>match_rgx = 'Stream\s(\/\/streams\/gta.*?)\s'
</code></pre>
<p>编辑3:见评论。你知道吗</p>