Python 如何获取指定层级的大括号中的内容
例如字符串:{{{1,2,{3,4},{{{5,6}}}}}}预期结果:result=‘1,2,{3,4},{{{5,6}}}’目前已知可以实现的是提取了‘3,4’‘5,...
例如字符串:{{{1,2,{3,4},{{{5,6}}}}}}
预期结果:result=‘1,2,{3,4},{{{5,6}}}’
目前已知可以实现的是提取了‘3,4’‘5,6’也就是说走到了最底层的{},但是我只想获取外面一层的 展开
预期结果:result=‘1,2,{3,4},{{{5,6}}}’
目前已知可以实现的是提取了‘3,4’‘5,6’也就是说走到了最底层的{},但是我只想获取外面一层的 展开
1个回答
展开全部
# -*- coding: cp936 -*-
text="{{{1,2,{3,4},{{{5,6}}}}}}"
def getbrace(text,level):
result=[]
stack=[]
i=0
while i<len(text) and text[i]=="{" and len(stack)<level:
i+=1
stack.append('{')
while i<len(text):
if text[i]=='{':stack.append('{')
if text[i]=='}':stack.pop()
if len(stack)>=level: result.append(text[i])
i+=1
return ''.join(result)
print(getbrace(text,3)) #获得第3层级大括号中的内容
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询