从字符串中删除双引号

Lib*_*bby 15 ruby regex string

我正在尝试从MySQL数据库中获取数据并使用Ruby将其重新格式化为平面文本文件.我的一些MySQL数据包含双引号,如下所示:

Matthew "Matt" Perry

我需要删除这些引号并用其他内容替换它们,| 例如.

我在stackoverflow上发现了另一篇关于删除引号的帖子,建议如下:

s.scan(/'(.+?)'|"(.+?)"|([^ ]+)/).flatten.compact
Run Code Online (Sandbox Code Playgroud)

但是返回完整的字符串(带双引号).我怎样才能得到

Matthew |Matt| Perry

代替?

don*_*ngg 23

如果您不想修改,这将执行此操作s:

new_s = s.gsub /"/, '|'
Run Code Online (Sandbox Code Playgroud)

如果你想修改s:

s.gsub! /"/, '|'
Run Code Online (Sandbox Code Playgroud)


the*_*Man 5

你可以使用类似的东西:

text = 'Matthew "Matt" Perry'

text.tr(%q{"'}, '|') # => "Matthew |Matt| Perry"

text = "Matthew 'Matt' Perry"
text.tr(%q{"'}, '|') # => "Matthew |Matt| Perry"
Run Code Online (Sandbox Code Playgroud)