本文实例讲述了python正则表达式实现截取成对括号的方法。分享给大家供大家参考,具体如下:
strs = '1(2(3(4(5(67)6)7)8)9)0'
reg1 = re.compile('([()])∗') #一对括号
reg2 = re.compile('([()]|\([()]∗)*\)') #两对括号
reg3 = re.compile('([()]|\([()]∗|([()]|\([()]∗)*\))*\)') #三层
函数
#匹配成对括号正则表达式
def getreg(self, count, bracket = '()'):
leftbracket = bracket[0]
rightbracket = bracket[1]
count -= 1
regbasic = leftbracket + '(?:[^' + leftbracket + rightbracket + '])*' + rightbracket
if count < 0:
regbasic = ''
if count > 0:
for i in xrange(count):
tempnum = regbasic.rfind('*') - 1
regbasic = regbasic[:tempnum] + "|" + regbasic + regbasic[tempnum:]
return regbasic
希望本文所述对大家python程序设计有所帮助。
更多python正则表达式实现截取成对括号的方法。