python正则表达式将字符串拆分为每个字符串但保留括号中的任何内容

时间:2015-08-12 15:13:05

标签: python regex string

我正在尝试拆分字符串,如下所示:

b = ['s', 'd', 'f', 'L', 'K', 'C', '[m2G]', 'T', 'O']

输出如下:

b = re.split(r'(\[.+?\])', a)

我对正则表达式的了解是基本的,我的代码是

['sdfLKC', '[m2G]', 'TO']

但是输出为$core->addFile(),如果它们不在括号中,我也希望拆分每个字符,我们将不胜感激任何帮助。

2 个答案:

答案 0 :(得分:1)

re.findall怎么样?即,做匹配而不是分裂。

>>> re.findall(r'\[[^\[\]]*\]|.', a)
['s', 'd', 'f', 'L', 'K', 'C', '[m2G]', 'T', 'O']

答案 1 :(得分:1)

您可以使用MyEnumType查找任意单个字符或2个方括号之间的字符串。

re.findall