How to replace multiple newlines in a row with one newline using Ruby

后端 未结 9 851
陌清茗
陌清茗 2021-02-05 03:42

I have a script written in ruby. I need to remove any duplicate newlines (e.g.)

\\n
\\n
\\n

to

\\n

My current

9条回答
  •  太阳男子
    2021-02-05 04:19

    You need to match more than one newline up to an infinite amount. Your code example will work with just a minor tweak:

    str.gsub!(/\n+/, "\n")
    

    For example:

    str = "this\n\n\nis\n\n\n\n\na\ntest"
    str.gsub!(/\n+/, "\n")  # => "this\nis\na\ntest"
    

提交回复
热议问题