Python核心编程--正则表达式

Python核心编程–正则表达式

正则表达式为高级的文本模式匹配、抽取、与/或文本形式的搜索和替换功能提供了基础。正则表达式(regex)是一些由字符和特殊符号组成的字符串,它们描述了模式的重复或者表述多个字符,于是正则表达式能按照某种匹配一系列有相似特征的字符串。Python通过标准库中的re模块来支持正则表达式。

常见正则表达式符号和特殊字符

在这里插入图片描述
在这里插入图片描述
最常用的正则表达式符号,即*、+和?,所有这些都可以用于匹配一个、多个或者没有出现的字符串模式。

正则表达式与python编程

在这里插入图片描述

举例:

match()
math()
match()是将要介绍的第一个re模块函数和正则表达式对象(regex object)方法。match()函数试图从字符串的起始部分对模式进行匹配。如果匹配成功,就返回第一个匹配对象;如果匹配失败,就返回None,匹配对象的group()方法能够用于显示那个成功的匹配。

search()
search()
search()的工作方式与match()完全一致,不同之处在于search()会用它的字符串参数,在任意位置对给定正则表达式模式搜索第一次出现的匹配情况。

findall()和findite()
findall()
findall()查询字符串中某个正则表达式模式全部的非重复出现情况。这与search()类似,不同在于,findall()返回一个列表(从左到右按出现顺序排列)。
finditer()
和findall()相比,finditer()返回的是迭代器。
注意:书上的代码为2.7版本,我使用的是3.6,所以需要将原先的next()改为__next__()。

sub()和subn()
sub()
sub()和subn()两者几乎一样,都是将某字符串中所有匹配正则表达式的部分进行某种形式的替换。sub()返回替换后的字符串,subn()还返回一个表示替换的总数。

split()
split()
如果给定分隔符不是使用特殊符号来匹配多重模式的正则表达式,那么re.split()与str.split()的工作方式相同。
split()2
上述就是正则表达式拥有一个简单的组件:使用split语句基于逗号分隔字符串。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值