擅长:python、mysql、java
<p>这将采取任何数量的字符在前面,和任何数量的数字之后。你知道吗</p>
<pre><code>def key(x):
alpha, num_str = re.match(r'([A-Z]+)(\d+)', x).groups()
num = int(num_str)
return (alpha, num)
>>> sorted(["AC40", "AB55", "D9", "D10", "E9P", "E10P"], key=key)
['AB55', 'AC40', 'D9', 'D10', 'E9P', 'E10P']
</code></pre>