根据条件使用.split()函数?

时间:2013-11-26 03:36:00

标签: python list python-3.x split

您如何根据条件使用.split()函数?

假设我有原始数据:

Apples,Oranges,Strawberries Green beans,Tomatoes,Broccoli

我的预期结果是:

['Apples','Oranges','Strawberries','Green beans','Tomatoes','Brocolli']

它是否能够以逗号分隔,并且如果有空格和大写字母后面的话?

2 个答案:

答案 0 :(得分:4)

使用re.split

对您要求的字面解释
import re
pat = re.compile(r'\s(?=[A-Z])|,')
pat.split(my_str)

在您的情况下,这更简单地完成:

pat = re.compile(r'.(?=[A-Z])')

基本上,拆分任何后跟大写字母的字符。

答案 1 :(得分:1)

使用正则表达式会使代码比复杂的split语句更简单。

import re
...
re.findall(", [A-Z]",data)

请注意,您要求对命令,空格,大写进行拆分,但在您的示例中,逗号后面没有空格。