I\'m trying to grab data from a MySQL database and use Ruby to reformat it into a flat text file. Some of my MySQL data contains double quotes like so:
<
It removes doublequotes. You can see them in IRB or when using p
only because string are being showed for you in these cases in nice form, allowing you to see, that they are strings.
irb> 'Matthew "Matt" Perry'.scan(/'(.+?)'|"(.+?)"|([^ ]+)/).flatten.compact
=> ["Matthew", "Matt", "Perry"]
In real, they already don't have doublequotes.
irb> puts 'Matthew "Matt" Perry'.scan(/'(.+?)'|"(.+?)"|([^ ]+)/).flatten.compact
Matthew
Matt
Perry
=> nil
And to replace doublequotes with dash, you may use .tr:
irb> 'Matthew "Matt" Perry'.tr '"','|'
=> "Matthew |Matt| Perry"