python - 按 '],[' 拆分字符串,但保留括号

标签 python string split

我得到了这种格式的字符串

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/

相关文章:

python - 我有 8 年的每日数据。我想绘制一周中每天、一年中的每周和一年中的每个月的所有值。我怎么做?

python - 使用 for 循环在列表或数组中分配键值

Python csv 模块与 pandas.read_csv 和 Python xlrd 与 pandas.read_excel

Python 在 2000 个字符后拆分字符串

120 MB CSV 文件的 String.Split() 上的 .NET System.OutOfMemoryException

python - 如何使用 Python 中的索引从列表中提取元素?

c# - 将所有 String 元素从 List 连接到 String 的最快方法

python - 用 DICT python 中的单词替换精确数字

javascript - 检查字符串是否包含数字?如果是,则将该数字替换为另一个字符串

javascript - 使用 IndexOf 分割数组不起作用