<pre><code>X = ['2.2 31452- MMMMM 25 EA 1.2 AC - Auto Uni', '20Eye Customer: 300xxxx ',
'Order Number: 215987 Salesperson: Barbara']
delimiter = ','
def extract(s):
SPACE = ' '
result = []
start = 0
end = 0
already_encounter_space = False
continous_space = False
for idx, c in enumerate(s):
if c != SPACE:
if already_encounter_space:
if continous_space:
result.append(s[start:end + 1])
start = idx
else:
end = idx
else:
end = idx
already_encounter_space = False
continous_space = False
else:
if already_encounter_space:
continous_space = True
else:
already_encounter_space = True
result.append(s[start:end + 1])
return result
tmp = list()
for s in X:
tmp.extend(extract(s))
X = [delimiter.join(tmp)]
print X
</code></pre>
<p>我们得到了这样的答案:</p>
<pre><code>['2.2,31452- MMMMM,25 EA,1.2 AC - Auto,Uni,20Eye,Customer: 300xxxx,Order Number: 215987 Salesperson: Barbara']
</code></pre>
<p>请注意,最后一个没有用逗号分隔,因为中间只有一个空格(Thx到@YamanJain,他让我想起了这个gotcha)。这就是你想要的吗?你知道吗</p>