Python是一个额外的下划线

Iva*_*Yan 2 python

考试:

import re
m = re.match(r'\d*[a-zA-z]+', '123abc_2_1_4')
print(m.group()) 
Run Code Online (Sandbox Code Playgroud)

我希望结果是'123abc',但它是'123abc_'.为什么还有一个额外的下划线?

PS.我在python 3.3.4和python 2.7.6(windows x64)下测试

Bar*_*mar 9

正则表达式应该是:

r'\d*[a-zA-Z]+'
           ^
Run Code Online (Sandbox Code Playgroud)

如果你看一个ASCII图表,你会看到大写和小写字母之间有许多标点符号,你匹配它们和字母.