Допустим, у меня есть строка со значениями, разделенными запятыми, заключенными в одинарные кавычки, которые могут включать или не включать запятые, например:
"'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, которое я не получаю, что вызывает странный результат?