擅长:python、mysql、java
<p>您不匹配初始空间;您还希望将日期分组以便于提取,并将<code>\D</code>和<code>.*</code>模式限制为非贪婪模式:</p>
<pre><code>t_pat = re.compile(r".*\[\s?(\d+/\D+?/.*?)\]")
</code></pre>
<p>演示:</p>
<pre><code>>>> re.compile(r".*\[\s?(\d+/\D+?/.*?)\]").search(line).group(1)
'1/Jul/2013 03:27:12.818'
</code></pre>
<p>您可以进一步缩小模式的范围;您只需要为一个月匹配3个字母,例如:</p>
<pre><code>t_pat = re.compile(r".*\[\s?(\d{1,2}/[A-Z][a-z]{2}/\d{4} \d{2}:\d{2}:[\d.]{2,})\]")
</code></pre>