第11.4节 Python正则表达式搜索字符集匹配功能及元字符”[]”介绍

Python正则表达式字符集匹配表示是指搜索一个字符,该字符在给定的一个字符的集合中。元字符‘[‘和’]’是用于组合起来定义匹配字符集,匹配模式中使用 ‘[‘开头,并使用’]’结尾来穷举搜索的字符可能出现的集合,注意一个字符集仅用于匹配一个字符,当要字符集匹配多个字符时可以通过定义多个字符集或字符集重复的模式来定义匹配模式。

字符集中的字符可以穷举列出允许的所有字符,也可以通过给出两个起始和终止字符并在中间用 连字符’-’ 标记将它们分开,表示从起始字符到终止字符的一系列字符,这一系列字符包含起始字符和终止字符。
字符集除了指定要匹配的字符外,还可以指定不匹配指定的字符,此时需要使用排除字符集,排除字符集是指在字符集开头添加一个脱字符^字符,例如’[^abc]'与除a、b和c外的其他任何字符都匹配。

举例:
[abc] 将匹配字符 a、b 或 c中的一个;
[0-9] 将匹配一个数字
[a-z]将匹配一个小写字母
[a-zA-Z] 将匹配一个字母
[a-zA-Z0-9] 将匹配一个字母或数字
[一-十]将匹配中文的数字

>>> re.findall("第[一-百][章回]",'第一回 悟彻菩提真妙理 断魔归本合元神 第二回 悟彻菩提真妙理 断魔归本合元神')
['第一回', '第二回']

注意:
 一个字符集只能匹配一个字符
 字符集中的其他元字符不生效,仅代表自身
 在集合内要匹配一个字符 ‘]’,有两种方法,要么就在它之前加上反斜杠,要么就把它放到集合首位。比如,“ [()[]{}]” 和“ [{}]” 都可以匹配 ‘]’。

下面的例子说明了字符集中的元字符.(点)仅代表自身,没有作为元字符生效:

>>> re.search("[A-Za-z]([A-Za-z0-9])*[.]txt",'Abc2019.txt')
<re.Match object; span=(0, 11), match='Abc2019.txt'>
>>> re.search("[A-Za-z]([A-Za-z0-9])*[.]txt",'Abc2019txt') 
>>>

老猿Python,跟老猿学Python!
博客地址:https://blog.csdn.net/LaoYuanPython

请大家多多支持,点赞、评论和加关注!谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LaoYuanPython

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值