我得到了这种格式的字符串
a = "[a,b,c],[e,d,f],[g,h,i]"
我要拆分的每个部分都由],[分隔。我尝试了 a.split("],[") 并删除了结束括号。
在我的例子中是:
["[a,b,c","e,d,f","g,h,i]"]
我想知道拆分后是否有办法保留括号?
期望的结果:
["[a,b,c]","[e,d,f]","[g,h,i]"]
请您参考如下方法:
问题是 str.split从结果列表中删除您拆分的任何子字符串。我认为在这种情况下使用稍微更强大的 split 会更好来自 re 的功能模块:
>>> from re import split
>>> a = "[a,b,c],[e,d,f],[g,h,i]"
>>> split(r'(?<=\]),(?=\[)', a)
['[a,b,c]', '[e,d,f]', '[g,h,i]']
>>>
(?<=\])是一个查找 ] 的后向断言.同样,(?=\[)是寻找 [ 的前瞻断言. Regular Expression Syntax 中解释了这两种构造。 .
