正则表达式(四):正则表达式中的分组的概念

 一、正则表达式分组的概念

 正则表达式的分组能够将子表达式做成子集,使用()进行分组,方便对match的字符串进行划分。

 

二、正则表达式分组的命名方式

分组的命名方式为:(?<groupname> exp)

另外还有一种方式,我们可以匹配exp,但是不捕获匹配的文本,也不分配组号,可以通过:(?:exp)

 

这里提一下,匹配内容的时候,有两种模式,一种是贪婪(尽可能多的匹配内容 --> .* )。,另外一种是懒惰(尽可能少的匹配内容,即匹配任意数量的重复,但是在能使整个匹配成功的前提下,使用最少的重复 --> .*? ):

这里举个例子:

  • a.*b      匹配内容:aabab  -->  匹配结果:aabab
  • a.*?b      匹配内容:aabab  -->  匹配结果:aab

下面的表格是其他情况的懒惰的匹配规则语法及说明:

 

 三、实例:使用正则表达式分组获取百度页面的内容标题

 

 

posted @ 2020-09-27 13:58  灰色飘零  阅读(3989)  评论(0编辑  收藏  举报