>>18
出遅れた気がするけど、
str = 'first,second"a,b,c"second,third'
str.scan(/(?:^|\G,)([^",]*(?:"[^"\\]*(?:\\.[^"\\]*)*"[^",]*)*)/).map{|a|a[0]}