1.finditer
匹配字符串中所有符合正则的内容,返回的是迭代器,从迭代器拿内容需要用到.group()
it = re.finditer(r"匹配条件","需要匹配的字符串")
for i in it:
print(i.group())
简单地介绍一下finditer的返回是一个迭代器对象,这个东西具有是一次性的性质,也就是说从头到尾只能访问一次,且不可悔棋!如果后续需要多次访问它指向的数据,那么在第一次访问的时候就要把它里面的数据另存。
2.findall
匹配字符串中所有符合正则的内容,返回的是列表
it = re.finditer(r"匹配条件","需要匹配的字符串")
print(it)
3.search
扫描整个字符串,并返回第一个成功的匹配,返回类型为match对象,拿数据需要用.group(),只返回一个!
it = re.search(r"匹配条件","需要匹配的字符串")
print(it.group())
4.match
必须从字符串的开头进行匹配,如果字符串的开头不匹配,则匹配失败;成功则返回match对象,group()方法提取
it = re.match(r"匹配条件","需要匹配的字符串")
print(it.group())
5.其他问题
这里要注意第一个finditer,返回的迭代器是可以空的,也可以是迭代器的某一行的某一列是空的,但是都不妨碍后续的使用。
|