我得到了这种格式的字符串
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 中解释了这两种构造。 .
关于python - 按 '],[' 拆分字符串,但保留括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27495860/