python re.sub的第二个参数

思路是参照的下面这篇博客,平时re用的挺多,但是分组操作用的确很少,灵活运用分组操作能简化很多操作

Python: re.sub()第二个参数

测试用例:

content="""<table><tbody><tr><td>测试1</td></tr></tbody></table><br/><table><tbody><tr><td>测试1</td></tr></tbody></table><br/>"""

目的:
在所有标签后添加一个自定义标签

content = re.sub('</{0,1}table.*?>|</{0,1}tbody.*?>|<th.*?>|<tr.*?>|<td.*?>|</th>|</tr>|</td>|<br/>',r'\g<0><split/>', content,flags=re.I | re.S)

|代表表达式a|表达式b|表达式c|表达式d|表达式e...
\g<0>代表所有匹配结果
\g<0><split/>代表在所有匹配结果后添加<split/>

正则表达式分组

分组就是用一对圆括号“()”括起来的正则表达式,匹配出的内容就表示一个分组。从正则表达式的左边开始看,看到的第一个左括号“(”表示第一个分组,第二个表示第二个分组,依次类推,需要注意的是,有一个隐含的全局分组(就是0),就是整个正则表达式。

r'(分组1)(分组2)(分组3)(分组4)(分组5)'

对应编号为1,2,3,4,5
0代表全部分组

使用group(num)和groups()函数可以获取分组中的内容

命名分组

命名分组就是给分组起一个别名,在引用时用这个名字即可

(?P<name>正则表达式)

使用group(name)去引用名为name的分组

参考资料:
正则表达式分组

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值