【发布时间】:2010-10-23 14:29:39
【问题描述】:
假设我有一个带有逗号分隔值的字符串,该字符串用单引号括起来,可能包含也可能不包含逗号,如下所示:
"'apples,bananas','lemons'"
我想把它拆分成一个数组
["apples,bananas", "lemons"]
显然,如果我 split(',') 我得到的字符串
[ "'apples", "bananas'", "lemons" ]
我不明白。我想出的唯一方法是
a = []
s = "'apples,bananas','lemons'"
s.scan(/\'([^\']+)\'/){|i| a << i[0]}
# result is ["apples,bananas", "lemons"]
但是还有更优雅的方式吗?是否有我没有得到的 split 方法导致奇怪的结果?
【问题讨论】: