python3 re返回形式总结
我们在进行程序操作的时候,因为各种原因,需要通过不同的形式返回到之前的对象。不知道小伙伴们会几种返回的函数方法呢?今天要介绍的是findall和finditer这一对小伙伴,它们在输出的形式上有所不同。在这里小编先卖一个关子,想要知道答案的小伙伴,我们接着往下看。
findall(pattern,string,flags=0)
在字符串string中匹配所有符合正则表达式pattern的对象,并把这些对象通过列表list的形式返回。
importre pattern=re.compile(r'\W+') result1=pattern.findall('helloworld!') result2=pattern.findall('helloworld!',0,7) print(result1)#['','!'] print(result2)#['']
finditer(pattern,string,flags=0)
在字符串string中匹配所有符合正则表达式pattern的对象,并把这些对象通过迭代器的形式返回。
importre pattern=re.compile(r'\W+') result=pattern.finditer('helloworld!') forrinresult: print(r) ##
Python3Re常用方法
常用的功能函数包括:compile、search、match、split、findall(finditer)、sub(subn)
1.compile
- re.compile(pattern[,flags])
作用:把正则表达式语法转化成正则表达式对象
flags定义包括:
- re.I:忽略大小写
- re.L:表示特殊字符集\w,\W,\b,\B,\s,\S依赖于当前环境
- re.M:多行模式
- re.S:'.'并且包括换行符在内的任意字符(注意:'.'不包括换行符)
- re.U:表示特殊字符集\w,\W,\b,\B,\d,\D,\s,\S依赖于Unicode字符属性数据库
2.search
- re.search(pattern,string[,flags])
作用:在字符串中查找匹配正则表达式模式的位置,返回MatchObject的实例,如果没有找到匹配的位置,则返回None。
3.match
- re.match(pattern,string[,flags])
- match(string[,pos[,endpos]])
作用:match()函数只在字符串的开始位置尝试匹配正则表达式,也就是只报告从位置0开始的匹配情况,
而search()函数是扫描整个字符串来查找匹配。如果想要搜索整个字符串来寻找匹配,应当用search()。
到此这篇关于python3re返回形式总结的文章就介绍到这了,更多相关python3re有哪些返回形式内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!