python中的嵌套例题_python里使用正则表达式的组嵌套实例详解

python里使用正则表达式的组嵌套实例详解

由于组本身是一个完整的正则表达式,所以可以将组嵌套在其他组中,以构建更复杂的表达式。下面的例子,就是进行组嵌套的例子:

#python 3.6

#蔡军生

#http://blog.csdn.net/caimouse/article/details/51749579

#

import re

def test_patterns(text, patterns):

"""Given source text and a list of patterns, look for

matches for each pattern within the text and print

them to stdout.

"""

# Look for each pattern in the text and print the results

for pattern, desc in patterns:

print('{!r} ({})\n'.format(pattern, desc))

print(' {!r}'.format(text))

for match in re.finditer(pattern, text):

s = match.start()

e = match.end()

prefix = ' ' * (s)

print(

' {}{!r}{} '.format(prefix,

text[s:e],

' ' * (len(text) - e)),

end=' ',

)

print(match.groups())

if match.groupdict():

print('{}{}'.format(

' ' * (len(text) - s),

match.groupdict()),

)

print()

return

例子:

#python 3.6

#蔡军生

#http://blog.csdn.net/caimouse/article/details/51749579

#

from re_test_patterns_groups import test_patterns

test_patterns(

'abbaabbba',

[(r'a((a*)(b*))', 'a followed by 0-n a and 0-n b')],

)

结果输出如下:

'a((a*)(b*))' (a followed by 0-n a and 0-n b)

'abbaabbba'

'abb' ('bb', '', 'bb')

'aabbb' ('abbb', 'a', 'bbb')

'a' ('', '', '')

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值