我有一个这样的字符串:
a = '{CGPoint={CGPoint=d{CGPoint=dd}}}{CGSize=dd}dd{CSize=aa}'
目前我正在使用这个re
语句来获得所需的结果:
filter(None, re.split("\\{(.*?)\\}", a))
但这会给我带来:
['CGPoint={CGPoint=d{CGPoint=dd', '}}', 'CGSize=dd', 'dd', 'CSize=aa']
这个列表与我的当前情况不符,我需要像这样的一个列表:
['CGPoint={CGPoint=d{CGPoint=dd}}', 'CGSize=dd', 'dd', 'CSize=aa']
{
时增加,在遇到}
时减少。当深度返回到0时,可以取从第一个{
处到此处的子字符串。 - Martin Ender