正则笔记

本文介绍了一个使用Python正则表达式从复杂嵌套结构中提取子结构的方法。通过一个具体的例子,展示了如何匹配并获取特定模式的字符串。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

逛论坛发现一个正则问题,于是做了一下:

现有一字符串:

String str = "aaa[bbb[ccc,ddd[eee,fff]],ggg[hhh,iii]]";

要求,取出所有类似 xxx[xxx,xxx] 结构的字符串 ,

当然,这个最后的结果应该是
aaa[bbb[ccc,ddd[eee,fff]],ggg[hhh,iii]]
bbb[ccc,ddd[eee,fff]]
ddd[eee,fff]
ggg[hhh,iii]

求一正则表达式,能将这个字符串分割成以上结果!

import re
str = "aaa[bbb[ccc,ddd[eee,fff]],ggg[hhh,iii]]"
list1 =[re.match(r'(\w+\[(\w+\[\w+,(\w+\[\w+,\w+\])\]),(\w+\[\w+,\w+\])\])', str).group(i) for i in range(1,5)]
print list1

结果:

['aaa[bbb[ccc,ddd[eee,fff]],ggg[hhh,iii]]', 'bbb[ccc,ddd[eee,fff]]', 'ddd[eee,fff]', 'ggg[hhh,iii]']
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值