python标准库之文本系列 -- python重器:re模块中卷

在这一章里我们只学学两个问题:

  一.用组解析匹配

  二.搜索选项

一.用组解析匹配:

  组的定义:当我们匹配到模式返回MtachObject对象的时候,该对象除了包含着一些对子字符串的信息以外,还包含着哪个模式匹配了哪部分的子字符串的信息,这些部分就叫做组。这样做到好处在于可以隔离匹配文本的各个部分。

  组的编号:组的编号很简单,组0表示与整个表达式匹配的字符串,子组按其左括号在表达式中出现的顺序编号,从1开始。

  扩展基本组:python扩展了基本组的语法,并且增加了命名组,通过名字来指示组,这样做的好处在于,不必在修改模式的同时去修改使用了匹配结果的代码。因为python把名字映射成了组,用字典储存,这样就可以保证后续代码的稳定性。命名组的语法为:(?P<name>pattern)。

  非捕获组:如果匹配子模式的字符串不必从整个文本中抽取,那么可以为该组创建一个非捕获组,语法为(?:pattern),它可以用来描述重复或者替代,而不会隔离返回值中字符串的匹配部分

  我们知道Match对象,他除了包含着查看模式信息,原字符串信息,模式所在的位置方法以外,还有三个方法,分别是:match.groups(),match.group([group0...]),match.groupdict()。这三个方法的作用为:

match.groups():按匹配字符串的组在表达式中的顺序返回一个字符串序列(以元组返回),注意返回的序列中不

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值