有些模块里的字符名字有点奇怪,今天要讲的闭包操作符光听名字就不知道意思,有些小伙伴猜测是一个很大而且难学的点,其实并不是这样的哦~不相信的小伙伴可以继续往下看,本篇文章主要是对python3 re闭包操作符内容进行简单介绍,同时为大家带来re模块中其他的字符。
闭包操作符实现存在性和频率匹配
以下为贪婪匹配模式:They match as much text as possible.
星号(*): 匹配其左边出现的正则表达式0次或者多次,即[0, +oo),取值为整数
加号(+): 匹配其左边出现的正则表达式1次或者多次,即[1, +oo), 取值为正整数
问号(?): 匹配其左边出现的正则表达式0次或者1次
花括号{N}:匹配其左边出现的正则表达式N次
花括号{M, N}:匹配其左边出现的正则表达式M~N次
以下为非贪婪匹配模式:“偷懒”模式,as few characters as possible will be matched.
*?:匹配0次
+?:匹配1次
??:匹配0次
{M, N}?: 只匹配M次
拓展:
反斜杠(\):
作用:将以上一些特殊字符进行转义,变为普通字符,比如\? \. \*等。
使用圆括号()分组:
含义:有些时候,我们不仅想知道整个字符串是否匹配我们的标准,可能还会对匹配成功的数据更感兴趣,想要提取已经成功匹配的特定字符串或者字符串,这个时候我们可以使用括号包括任何正则表达式。
作用:
对正则表达式分组
匹配子组
字符集的特殊字符:
含义:有些特殊字符能够表示字符集
\d 任何十进制数字,即[0-9]
\D 表示任何非十进制数字,即[^0-9]
\w 全部字母、数字的字符集,相当于[A-Za-z0-9]
\s 表示空白字符
\b 匹配字符串边界,
\B 匹配出现在一个单词中间的模式,即不是单词边界
看到这里小伙伴们会发现,本篇讲的都是python3 re的一些字符,基础知识进行记忆就好啦。更多Python学习推荐:PyThon学习网教学中心。