Python使用re库处理正则详解

今天继续给大家介绍Python相关知识,本文主要内容是Python使用re库处理正则详解。

一、Python re库简介

re库是Python的标准库(所谓标准库,就是在安装Python后就自动安装了的库)之一,主要用于对指定字符串进行正则匹配。使用时需要import引入re即可。
要学习re库的使用就需要学习正则表达式的写法,关于正则表达式请参考:Linux 正则表达式与元字符。在这里就不过多赘述了。

二、Python re库主要函数简介

Python re库主要函数如下所示:
1、re.search()
该函数格式为:

re.search(pattern,string,flags)

作用是搜索字符串中符合正则表达式的第一个值,并返回一个match对象。
2、re.match()
该函数格式为:

re.match(pattern,string,flags)

该函数的作用是从一个字符串的开始未知起匹配正则表达式,该函数与re.search()函数的区别在于如果不能在开始时就匹配到正则表达式,就不会匹配到字符串中间符合条件的正则表达式。
3、re.findall()
该函数格式为:

re.findall(pattern,string,flags)

作用是搜索整个字符串,以列表形式返回所有能够匹配到的字串。
4、re.split()
该函数格式为:

re.split(pattern,string,maxsplit,flags)

作用是将一个字符串按照正则表达式匹配结果进行分隔,返回列表类型。maxsplit参数指定了最大分隔数,满足最大分隔数后最后的部分当作最后一个元素输出,该参数默认为0,表示无限制。
5、re.finditer()
该函数格式为:

re.finditer(pattern,string,flags)

该函数的作用是搜索string字符串,返回一个匹配结果的迭代类型,每个迭代元素是match对象。
6、re.sub()
该函数格式为:

re.sub(pattern,reple,string,count,flags)

该函数可以将string中所有符合正则表达式pattern的子字符串替换成字符串repel,然后返回替换后的字符串。count参数表示替换的最大次数,该参数默认为0,表示无限次。

三、Python re库控制标记简介

在上述Python re库常用函数中,pattern为一个正则表达式,string为一个待匹配的字符串,flags为正则表达式的控制标记。flags常用标记及作用如下表所示:

flags常用标记作用
re.l表示在进行正则匹配时,忽略大小写
re.M表示在正则表达式中^字符可以匹配每行的开始
re.S表示在正则表达式中.字符可以匹配所有字符(如果不使用此标记,则该字符会匹配除了换行符以外的所有字符)

四、Python re库使用示例

最后,给大家举几个Python re库的使用示例:
python代码如下所示:

import re

ex=r'[1-9][0-9]*'
str='jkd123ssd321asd'
match1=re.search(ex,str)
if match1:
    print("match1:"+match1.group(0))
match2=re.match(ex,str)
if match2:
    print("match2:"+match2.group(0))
match3=re.split(ex,str)
print("match3:",end='')
print(match3)
match4=re.findall(ex,str)
print("match4:",end="")
print(match4)
sub=re.sub(ex,'_NumSub_',str)
print("sub:"+sub)

上述代码执行结果如下所示:
在这里插入图片描述
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

永远是少年啊

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

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

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

打赏作者

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

抵扣说明:

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

余额充值