python与正则表达式(part4)--正则表达式分组(python正则表达式菜鸟教程)

网友投稿 308 2022-08-31


python与正则表达式(part4)--正则表达式分组(python正则表达式菜鸟教程)

文章目录

​​正则表达式分组​​

​​定义​​​​作用​​​​捕获组​​​​注意事项​​

正则表达式分组

定义

在正则表达式中,以()建立正则表达式的内部分组,子组是正则表达式的一部分,可以作为内部整体操作对象。

备注:当我们的正则表达式中存在子组时,就不能用findall(),则要用search().

作用

①可以被作为整体操作,改变元字符的操作对象

例子1(改变 +号 重复的对象)

In : re.search(r'(ab)+',"ababababab").group()Out: 'ababababab'

备注:匹配到,就会返回被匹配的内容;匹配不到,则会报错。

例子2(改变 |号 操作对象)

In : re.search(r'(王|李)\w{1,3}',"王者荣耀").group()Out: '王者荣耀'

备注:如果不加​​【()】​​​小括号,将匹配​​【王】​​​或​​【李\w{1, 3}】​​​.若加小括号则​​【王|李】​​​会作为一个内部整体,将匹配​​【王\w{1, 3}】​​​或​​【李\w{1, 3}】​​

②可以通过编程语言某些接口,获取匹配内容中,子组对应的内容部分

备注:子组发挥作用的前提是,整个正则表达式能够匹配到东西。

例子1

In:re.search(r'(': re.search(r'(?Pab)+',"ababababab").group('pig')Out: 'ab'

例子2

In: re.search(r'(?P王|李)\w{1,3}',"王者荣耀").group("FirstName")Out: '王'

注意事项

①一个正则表达式中可以包含多个子组 ②子组可以嵌套,但是不要重叠或者嵌套结构复杂 ③子组序列号一般从外到内,从左到右计数


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:python与正则表达式(part6)--re模块使用(python中的正则表达式re)
下一篇:Java深入了解数据结构之优先级队列(堆)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~