python 正则表达式关于‘?’新手求助
想请教一下大家,正则表达式中的?究竟是代表什么意思啊?
从下面来看,为什么(1)和(2)返回的结果是一样的,但是(2)和(4)返回的结果是不一样的呢?
>>> a='From stephen.marquard@uct.ac.za Sat Jan 5 09:14:16 2008'
(1)>>> b=re.findall('\S+@\S+',a)
>>> print(b)
['stephen.marquard@uct.ac.za']
(2)>>> b=re.findall('\S+?@\S+',a)
>>> print(b)
['stephen.marquard@uct.ac.za']
(3)>>> b=re.findall('\S+?@\S+?',a)
>>> print(b)
['stephen.marquard@u']
(4)>>> b=re.findall('\S+@\S+?',a)
>>> print(b)
['stephen.marquard@u']
谢谢大家了嗷!