如何从Rails中带双引号的字符串递归删除中断行(/ s)

时间:2015-01-30 12:51:08

标签: ruby-on-rails regex

我想用双引号从字符串中递归删除所有断行,但我只删除了一行。

我这样做但我只是删除了一个:

string.gsub(/\"(.*)\s(.*)\"/,'\1,\2')

1 个答案:

答案 0 :(得分:1)

我愿意:

string = 'hello "there cruel world"'

string.gsub(/\"[^"]+?\"/) do |match|
  match.gsub(/\s+/, ', ')
end

#=> 'hello "there, cruel, world"'

当然可以使用单个正则表达式,但这种方式更具可读性。