##re.findall()
re.findall() 返回匹配成功的列表 注意:遇到子组的时候,返回的是子组内容列表
>>> re.findall(r'a[A-Z]\S*','aBC aDE5464')
['aBC', 'aDE5464']
子组findall 返回的是子组内容列表
>>>re.findall(r'(a[A-Z])\S*','aBC aDE5464')
['aB', 'aD']
##子组re.match().group() 和 re.search().group() 返回第一个匹配内容;前者必须开头匹配,不然报错;后者不限制
>>> re.match(r'(?P<pig>a[A-Z])\S*','aBC aDE5464').group()
'aBC'
>>> re.match(r'(?P<pig>a[A-Z])\S*','aBC aDE5464').group(1) #子组内容
'aB'
##捕获组 (子组命名)
>>> re.match(r'(?P<pig>a[A-Z])\S*','aBC aDE5464').group()
'aBC'
>>> re.match(r'(?P<pig>a[A-Z])\S*','aBC aDE5464').group(1)
'aB'
re.match().groupdict()子组名:子组内容组成的字段
>>> re.match(r'(?P<pig>a[A-Z])\S*','aBC aDE5464').groupdict()
{'pig': 'aB'}
>>> re.search(r'(?P<pig>a[A-Z])\S*','aBC aDE5464').groupdict()
{'pig': 'aB'}
##迭代器
import re
b = re.finditer(r'a[A-Z]\S*', 'aBC aDE5464')
for i in b:
print(i.group())
aBC
aDE5464