正则表达式2

关于匹配次数的一些符号:

* 匹配任意次数
+  至少1次
?  0次或者1次
{N}  匹配N次
{M~N}  匹配M~N次
[...] ...代表任意字符,[...]的意思是来自字符集的任一个字符
[x~y] 匹配x~y的任一个字符
[^...]  不匹配字符集的任一字符
(...)  匹配封闭的正则表达式,然后另存为子组。

除了可以用^匹配起始字符串,用$匹配结尾字符串,我们还可以用\b匹配一个单词的边界,用\B匹配出现在一个单词中间的模式。
举例:\bthe可以匹配bite the dog中的the,但是无法匹配bitethe dog中的the。\Bthe就可以匹配到bitethe dog,但是无法匹配bite the dog。

关于?,还有其他含义:如果问号紧跟在任何使用闭合操作符的匹配后面,它将直接要求正则表达式引擎匹配尽可能少的次数。
什么是闭合操作符?举例: []、{}

re模块核心函数
re.compile(pattern,flags=0) 使用任何可选的标记来编译正则表达式的模式,然后返回一个正则表达式对象
compile()函数提供的是预编译功能,可以提高代码执行速度。你也可以不预编译,选择权在你。
re.match(pattern,string,flags=0) 尝试使用带有可选的标记的正则表达式的模式来匹配字符串。如果匹配成功,就返回匹配对象;如果失败,就返回None
re.search(pattern,string,flags=0) 使用可选标记搜索字符串中第一次出现的正则表达式模式。如果匹配成功,就返回匹配对象;如果失败,就返回None
re.findall(pattern,string[,flags]) 查找字符串中所有(非重复)出现的正则表达式模式,并返回一个匹配列表
re.finditer(pattern,string[,flags]) 与findall()函数相同,但返回的不是一个列表,而是一个迭代器。对于每一次匹配,迭代器都返回一个迭代对象。
re.split(pattern,string,max=0) 根据正则表达式的模式分隔符,split函数将字符串分割为列表,然后返回成功匹配的列表,分割最多操作max次。(默认分割所有匹配成功的位置)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值