python split字符串,包含空格和短划线

时间:2017-07-03 12:50:04

标签: python string split

我有一个产生以下@Bean

的迭代
string

我要做的是将字符串拆分为"always - blue" "sometimes-yellow - red" "seldom - blue" "maybe-red - blue" "mostly-blue - yellow"

期望的结果

" - "

我尝试了['always', 'blue'] ['sometimes-yellow', 'red'] ['seldom', 'blue'] ['maybe-red', 'blue'] ['mostly-blue', 'yellow'] a.split("-"),但似乎每次出现a.split(" - ")时都会分开。 即。 -分为['sometimes-yellow', 'red']。这不是我想要的。

我应该如何分割字符串以达到我想要的效果?

2 个答案:

答案 0 :(得分:0)

您确定在主题字符串或拆分参数中的' - '....两侧都有简单的空格字符吗? 您的编辑器可能正在插入选项卡。

否则,将'space minus space'序列作为arg的简单split()将做你想要的。

我的想法是:“他应该工作什么,所以还有什么可能出错?”

>>> z = "always-red-xxx-sss - blue"

>>> z.split(" - ")

['always-red-xxx-sss', 'blue']

答案 1 :(得分:0)

您可以使用rsplit()以所需格式拆分字符串。

>>> string="always - blue"
>>> string.rsplit(' - ')
['always','blue']
>>> string2="mostly-blue - yellow"
>>> string2.rsplit(' - ')
['mostly-blue','yellow']