为什么'[0-9]*'在我的Python正则表达式中不匹配'abc',因为字符串中有零个或多个数字?

Ank*_*wal 2 python regex grep python-2.7 character-class

为什么这个正则表达式:

>>> r = re.compile("[0-9]*", re.DEBUG)
Run Code Online (Sandbox Code Playgroud)

像这样匹配:

>>> m = r.search("abc")
>>> m.group()
''
Run Code Online (Sandbox Code Playgroud)

我希望它匹配整个字符串,'abc'因为'a'满足条件即匹配0位数,然后贪婪匹配将包括整个字符串'abc'.

Tig*_*kT3 5

您搜索了0位或更多位数.它找到了0位或更多位数.它找到的确切位数是0.因此,空字符串.