软件下载

python中re模块的用法(Python之re模块详解)

软件下载 投稿 2022-06-28 15:39:59 浏览

在这次学习中,我将把学习re库的笔记展现出来

findall函数的使用

1.匹配字符中所含的数字、汉字、下划线、字母和非数字、汉字、下划线、字母\w\W的方法

import re

str1 = '123Abc!@#你好呀'
print(re.findall('\w',str1))#所有的字母、数字、下划线、汉字
print(re.findall('\W',str1))#所有非字母、数字、下划线、汉字
关于Python中re模块的使用

 

2.匹配所有空白字符和非空白 \s\S

print(re.findall('\s',str1))#所有空白字符
print(re.findall('\S',str1))#所有非空白字符
关于Python中re模块的使用

 

3.匹配所有数字和非数字\d\D

print(re.findall('\d',str1))#所有数字
print(re.findall('\D',str1))#所有非数字
关于Python中re模块的使用

 

4.匹配字符串中不同位置的字符^ $

import re

str1 = '你好吗,我很好'
print(re.findall('^你好',str1))#匹配位于字符串开头的字符
str2 = '我很好,你好'
print(re.findall('你好$',str2))#匹配位于字符串末尾的字符
关于Python中re模块的使用

 

5.匹配字符的方式

import re
str1 = 'aababcccaa'
print(re.findall('a.b',str1))#匹配任意一个字符
print(re.findall('a?b',str1))#匹配字符a0次或1次
print(re.findall('a*b',str1))#匹配字符a任意次数
print(re.findall('a.*b',str1))#匹配任意字符任意次数(贪婪算法)
print(re.findall('a.*?b',str1))#匹配任意字符任意次数(非贪婪算法)
关于Python中re模块的使用

 

其中第四种匹配方式和第五种是差不多的,一个是到出现不同字符为止,另一个是不符合就停止

search函数的使用

search()函数只会匹配第一个满足正则表达式的字符串,匹配后用group()函数取值

import re

str1 = '123Abc!@#你好呀\n\r'
ret = re.search('\w',str1)
print(ret.group())
关于Python中re模块的使用

 

匹配到第一个字母、数字、下划线、汉字,如果匹配不到,会返回none,使用group取值时会报错

match函数的使用

match()函数和search()函数的功能差不多,区别是match()函数是从开头匹配,如果开头不满足正则表达式,后面满足正则表达式的字符串也不会被匹配到。

finditer函数的使用

finditer()函数和findall()函数的功能差不多,区别是findall()函数返回的是一个列表,finditer()函数返回的则是一个迭代器,需要利用循环来取值。

ret = re.finditer('\w',str1)
for i in ret:
    print(i.group(),end='')#输出时不换行
关于Python中re模块的使用

 

关于re模块的功能介绍就到这里,以上

「真诚赞赏,手留余香」

求资源网

真诚赞赏,手留余香

使用微信扫描二维码完成支付

继续浏览有关编程的文章
发表评论
留言与评论(共有 0 条评论)
   
验证码:
版权声明

求资源网所发布的一切破解补丁,软件,以及其他分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途。
否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。