擅长:python、mysql、java
<p>第一件可以改善的事情是重新编译功能之外。编译被缓存,但在检查它是否已编译时会出现速度问题。在</p>
<p>另一种可能是使用单个regex,如下所示:</p>
<pre><code>MatchedQuotes = re.compile(r"(['\"])(.*)\1", re.LOCALE)
item = MatchedQuotes.sub(r'\2', item, 1)
</code></pre>
<p>最后,您可以在processVariables中将其组合到regex中。接受<a href="https://stackoverflow.com/questions/146607/im-using-python-regexes-in-a-criminally-inefficient-manner#146683">Torsten Marek's</a>建议为使用函数re.sub公司,这大大改善和简化了事情。在</p>
^{pr2}$
<p>以下是我10万次跑步的时间安排:</p>
<pre><code>Original : 13.637
Global regexes : 12.771
Single regex : 9.095
Final version : 1.846
</code></pre>
<p>[编辑]添加缺少的非贪婪说明符</p>
<p>[Edit2]Added.upper()调用与原始版本一样不区分大小写</p>