我想用双引号从字符串中递归删除所有断行,但我只删除了一行。
我这样做但我只是删除了一个:
string.gsub(/\"(.*)\s(.*)\"/,'\1,\2')
答案 0 :(得分:1)
我愿意:
string = 'hello "there cruel world"'
string.gsub(/\"[^"]+?\"/) do |match|
match.gsub(/\s+/, ', ')
end
#=> 'hello "there, cruel, world"'
当然可以使用单个正则表达式,但这种方式更具可读性。