Python正则表达式分组(part4)如何应用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计817个文字,预计阅读时间需要4分钟。
文章目录+ 正则表达式分组+ 定义+ 作用+ 捕获组+ 注意事项+ 正则表达式分组+ 定义+ 在正则表达式中,使用括号()可以创建分组,用于对特定模式进行匹配和引用。+ 作用+ 分组可以用于提取匹配文本、构建替换字符串或进行复杂的模式匹配。+ 捕获组+ 分组内部的模式可以捕获匹配的文本,以便后续使用。+ 注意事项+ 分组中的模式应该遵循正则表达式的语法规则。+ 正则表达式分组+ 定义+ 在正则表达式中,使用括号()创建分组,用于对特定模式进行匹配和引用。+ 作用+ 分组可以用于提取匹配文本、构建替换字符串或进行复杂的模式匹配。+ 捕获组+ 分组内部的模式可以捕获匹配的文本,以便后续使用。
文章目录
- 正则表达式分组
- 定义
- 作用
- 捕获组
- 注意事项
正则表达式分组
定义
在正则表达式中,以()建立正则表达式的内部分组,子组是正则表达式的一部分,可以作为内部整体操作对象。
备注:当我们的正则表达式中存在子组时,就不能用findall(),则要用search().
作用
①可以被作为整体操作,改变元字符的操作对象
例子1(改变 +号 重复的对象)
In : re.search(r'(ab)+',"ababababab").group()Out: 'ababababab'
备注:匹配到,就会返回被匹配的内容;匹配不到,则会报错。
例子2(改变 |号 操作对象)
In : re.search(r'(王|李)\w{1,3}',"王者荣耀").group()Out: '王者荣耀'
备注:如果不加小括号,将匹配或.若加小括号则会作为一个内部整体,将匹配或
②可以通过编程语言某些接口,获取匹配内容中,子组对应的内容部分
备注:子组发挥作用的前提是,整个正则表达式能够匹配到东西。
例子1
In:re.search(r'(\S+',"www.baidu.com").group(1)Out: 'https'
捕获组
可以给正则表达式的子组起一个名字,表达该子组的意义。这种有名称的子组即为捕获组。
格式:(?P<名字>正则表达式)
例子1
In : re.search(r'(?P<pig>ab)+',"ababababab").group('pig')Out: 'ab'
例子2
In: re.search(r'(?P<FirstName>王|李)\w{1,3}',"王者荣耀").group("FirstName")Out: '王'
注意事项
①一个正则表达式中可以包含多个子组
②子组可以嵌套,但是不要重叠或者嵌套结构复杂
③子组序列号一般从外到内,从左到右计数
本文共计817个文字,预计阅读时间需要4分钟。
文章目录+ 正则表达式分组+ 定义+ 作用+ 捕获组+ 注意事项+ 正则表达式分组+ 定义+ 在正则表达式中,使用括号()可以创建分组,用于对特定模式进行匹配和引用。+ 作用+ 分组可以用于提取匹配文本、构建替换字符串或进行复杂的模式匹配。+ 捕获组+ 分组内部的模式可以捕获匹配的文本,以便后续使用。+ 注意事项+ 分组中的模式应该遵循正则表达式的语法规则。+ 正则表达式分组+ 定义+ 在正则表达式中,使用括号()创建分组,用于对特定模式进行匹配和引用。+ 作用+ 分组可以用于提取匹配文本、构建替换字符串或进行复杂的模式匹配。+ 捕获组+ 分组内部的模式可以捕获匹配的文本,以便后续使用。
文章目录
- 正则表达式分组
- 定义
- 作用
- 捕获组
- 注意事项
正则表达式分组
定义
在正则表达式中,以()建立正则表达式的内部分组,子组是正则表达式的一部分,可以作为内部整体操作对象。
备注:当我们的正则表达式中存在子组时,就不能用findall(),则要用search().
作用
①可以被作为整体操作,改变元字符的操作对象
例子1(改变 +号 重复的对象)
In : re.search(r'(ab)+',"ababababab").group()Out: 'ababababab'
备注:匹配到,就会返回被匹配的内容;匹配不到,则会报错。
例子2(改变 |号 操作对象)
In : re.search(r'(王|李)\w{1,3}',"王者荣耀").group()Out: '王者荣耀'
备注:如果不加小括号,将匹配或.若加小括号则会作为一个内部整体,将匹配或
②可以通过编程语言某些接口,获取匹配内容中,子组对应的内容部分
备注:子组发挥作用的前提是,整个正则表达式能够匹配到东西。
例子1
In:re.search(r'(\S+',"www.baidu.com").group(1)Out: 'https'
捕获组
可以给正则表达式的子组起一个名字,表达该子组的意义。这种有名称的子组即为捕获组。
格式:(?P<名字>正则表达式)
例子1
In : re.search(r'(?P<pig>ab)+',"ababababab").group('pig')Out: 'ab'
例子2
In: re.search(r'(?P<FirstName>王|李)\w{1,3}',"王者荣耀").group("FirstName")Out: '王'
注意事项
①一个正则表达式中可以包含多个子组
②子组可以嵌套,但是不要重叠或者嵌套结构复杂
③子组序列号一般从外到内,从左到右计数

