擅长:python、mysql、java
<p>在我的机器(Mac OS 10.7.3上的Python 2.7.3,1.7 GHz Intel Core i5)上,当完成字符串构造、导入re和regex编译并执行10000000次迭代(而不是10次)后,我发现相反的情况:</p>
<pre><code>import timeit
print timeit.timeit(stmt="r.match(s)",
setup="import re; s = 'helloab'*100000; r = re.compile('hello')",
number = 10000000)
# 6.43165612221
print timeit.timeit(stmt="r.search(s)",
setup="import re; s = 'helloab'*100000; r = re.compile('hello')",
number = 10000000)
# 3.85176897049
</code></pre>