From: Louis J Scoras Date: 2007-03-17T10:16:27+09:00 Subject: Re: Splitting A String Not a good solution by any means, but somebody might find it interesting. Assumes balanced quotes, no escaping, etc. require 'enumerator' def my_split s s.split('"') . # Just split on the quote to_enum(:each_slice,2) . # ... and deal w/ pairs inject([]) { |a,(e,o)| a . concat( e.split(' ') + # Split unquotes [o] # Stuff in quotes is okay as is ) } . compact # Finnally remove nils end -- Lou.