正则表达式的基本使用

18 篇文章 0 订阅
1 篇文章 0 订阅

**

正则表达式re库的基本使用

正则表达式的表示类型
re库采用raw string(原生字符串)类型表示正则表达式,表示为r’text’
例如: r’[1-9]\d{5}’

                   Re库的主要函数功能
函数                              说明
re.search       在一个字符串中搜索匹配正则表达式的第一个位置,返回match对象
re.match        搜索第一个字符串的开始位置匹配正则表达式,返回match对象
re.findall      搜索字符串,以列表类型返回全部能够匹配到的字串
re.finditer     搜索字符串,返回匹配结果的迭代类型,每个迭代元素都是match对象  (for in 遍历)
re.split        将一个字符串按照正则表达式的匹配结果进行分割,返回列表类型
re.sub          在一个字符串中替换所有匹配正则表达式的字串,返回替换后的字符串

所传入的参数:re.search(pattern, string, flags=0):
在一个字符串中搜索匹配正则表达式的第一个位置,返回match对象
pattern:表示希望传入的正则表达式的字符串或原生字符串的表示
string:要匹配的字符串
flags:正则表达式使用时的控制标记
示例:re.search
在这里插入图片描述
所传入的参数:re.match(pattern, string, flags=0):
搜索第一个字符串的开始位置匹配正则表达式,返回match对象
pattern:表示希望传入的正则表达式的字符串或原生字符串的表示
string:要匹配的字符串
flags:正则表达式使用时的控制标记
示例 re.match
在这里插入图片描述
若传入的第一个字符串不符合匹配的正则表达式,系统会报错
在这里插入图片描述

所传入的参数:re.findall(pattern, string, flags=0):
搜索字符串,以列表类型返回全部能够匹配到的字串
pattern:表示希望传入的正则表达式的字符串或原生字符串的表示
string:要匹配的字符串
flags:正则表达式使用时的控制标记
示例:re.findall()
re.findall示例

所传入的参数:re.split(pattern, string, maxsplit=0, flags=0):
搜索字符串,以列表类型返回全部能够匹配到的字串
pattern:表示希望传入的正则表达式的字符串或原生字符串的表示
string:要匹配的字符串
flags:正则表达式使用时的控制标记
maxsplit:最大分割数,剩余部分作为最后一个元素输出

示例:re.split
不传入maxsplit参数
传入maxsplit参数,这里maxsplit=1
传入maxsplit参数

所传入的参数:re.finditer(pattern, string, flags=0):
搜索字符串,返回匹配结果的迭代类型,每个迭代元素都是match对象
pattern:表示希望传入的正则表达式的字符串或原生字符串的表示
string:要匹配的字符串
flags:正则表达式使用时的控制标记

示例 re.finditer
在这里插入图片描述

所传入的参数:re.sub(pattern, repl, string, count=0, flags=0):
搜索字符串,返回匹配结果的迭代类型,每个迭代元素都是match对象
pattern:表示希望传入的正则表达式的字符串或原生字符串的表示
repl:替换需要替换的字符串
string:要匹配的字符串
count:最大替换次数
flags:正则表达式使用时的控制标记

示例:re.sub
在这里插入图片描述

还有一个将正则表达式的字符串形式编译成正则表达式的对象函数compile()
regex = re.compile(patern, flags=0)
例:
函数用法:一次性操作
mst = re.search(r’[0-9]\d{5}’, ‘ABC100202’)

面向对象用法:编译后可以进行多次操作
pat = re.compile(r’[1-9]\d{5}’)
rst = pat.search(“ABC100202”)
此时,这里的pat对象可以当作编译之后形成的正则表达式,可以调用re库中的函数
如pat.search、pat.findall等等
**

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值