Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Remove Brackets by pakhomovegor
Brackets={"}":"{","]":"[",")":"("}
def remove_brackets(x):
if x=="":return ""
close_s=x[-1]
if close_s in "([{":
return remove_brackets(x[:-1]) #remove any last OPEN bracket
else:
open_s=Brackets[close_s] #get needed open bracket
lvl=1 #nesting counter
for i in range(len(x)-2,-1,-1): #inversed for - since the removable brackets are closer to the beginning of the line
s=x[i]
if s==close_s: #new nest
lvl+=1
elif s==open_s: #end nest
lvl-=1
if lvl==0: #if first nest ended - get left and inner parts by recursion
return remove_brackets(x[:i])+open_s+remove_brackets(x[i+1:-1])+close_s
return remove_brackets(x[:-1]) #if no first nest match - remove last symbol
July 29, 2021
Comments: