擅长:python、mysql、java
<p>我认为如果输入字符串格式“足够严格”,就可以尝试不带regexp的东西。这看起来可能是一个微观优化,但可能是一个有趣的挑战。你知道吗</p>
<pre><code>result = map(lambda x: '[' + x, s[1:].split("["))
</code></pre>
<p>所以我试着在1英里迭代中检查性能,下面是我的结果(秒):</p>
<pre><code>result = map(lambda x: '[' + x, s[1:].split("[")) # 0.89862203598
result = re.findall(r'\[[^]]+\][^\[\]]+', s) # 1.48306798935
result = re.findall(r'\[.+?\]\w+', s) # 1.47224497795
result = re.findall(r'(\[\w*\]\w+)', s) # 1.47370815277
</code></pre>