所以我真的很困惑,我们的目标是在一个包装上分开,但是如果它在被包装的东西里,就不是同一个包装了。你知道吗
取以下字符串:
s = 'something{now I am wrapped {I should not cause splitting} I am still wrapped}something else'
结果列表应该是['something','{','now I am wrapped {I should not cause splitting} I am still wrapped','}','something else']
我尝试过的最简单的方法是用findall
来看看这是如何工作的,但是由于regex没有内存,所以它不考虑包装,因此只要找到另一个结束括号就结束了。事情是这样的:
>>> s = 'something{now I am wrapped {I should not cause splitting} I am still wrapped}something else'
>>> re.findall(r'{.*?}',s)
['{now I am wrapped {I should not cause splitting}']
有没有办法让我认出来不认出来它是不是内部包装的一部分?你知道吗
不确定这是否总是能满足您的需要,但您可以使用
partition
和rpartition
,例如:基于所有的响应,我决定只编写一个函数,接受字符串和包装器,并使用brute迭代输出列表:
现在这表明它在工作:
新答案:
相关问题 更多 >
编程相关推荐