re.match -- not greedy?

Fredrik Lundh fredrik at
Mon Nov 20 08:00:56 CET 2006

EXI-Andrews, Jack wrote:

>>>> import re;re.match('(a+)(ab)','aaab').groups()
> ('aa', 'ab')
> this is the sort of behaviour i'd expect from 
>    '(a+?)(ab)'
> a+ should greedily consume a's at the expense of the string
 > not matching

that's a misunderstanding of what a regular expression is, though: 
conceptually, a RE describes a set of strings, and the RE engine is 
designed to answer the question "does this string belong to this


More information about the Python-list mailing list