则表达式(英文名称:regular expression,regex,RE)是用来简洁表达一组字符串特征的表达式。最主要应用在字符串匹配中。
首先导入re正则表达式库import re
然后尝试在字符串中找到自己想要的数字
案例代码
代码及返回的结果:
import re
text = 'BIT 100081'
#方法1:函数式用法,一次性操作
rst = re.search(r'[1-9]\d{5}',text)
#方法2:面对对象用法,编译后的多次操作,表达器这三个字是为了便于理解
表达器 = re.compile(r'[1-9]\d{5}')
rst = 表达器.search(text)
print(rst)
Search函数
:search是re库中的函数,作用为:在一个字符串中搜索匹配正则表达式的第一个位置,返回match对象
如果想要返回字符串中所有符合条件的对象,可以使用findall函数
text是我们需要对其查找的字符串,其余部分为限制条件
在字符串前加 r 的作用是取消转义,防止/等等符号表达特殊意义,让字符串按标准的re语法来进行。
re库具体操作符
案例中的[1-9]代表我们要查找的内容范围,/d{5}代表要找6个数字
findall函数
import re
text = 'BIT 100081,zf46446464z,999959'
rst = re.findall(r'[1-9]\d{5}',text)
print(rst)
我们返回后的match对象,案例中的res,也有很多的属性
match对象的属性
字符串匹配注意点
这里的group(0)就是直接返回字符串 “.*”代表前面是PY,后面可以是任意字符无限拓展,最后字符串中出现了“N”,表示以N结尾