Jawaban:
lihat squishmetode Rails :
some_string.strip.gsub(/\s+/, " ")yang persis seperti yang dilakukan squish.
squish
Untuk mengilustrasikan Ruby built in squeeze :
string.gsub("\n", ' ').squeeze(' ')
squeeze(' ')hanya meremas ruang. "Squeeze my application's copy".squeeze(' ') => "Squeeze my application's copy".
regex ini akan mengganti instance dari 1 atau lebih spasi putih dengan 1 spasi, ps \sakan mengganti semua karakter spasi yang meliputi \s\t\r\n\f:
a_string.gsub!(/\s+/, ' ')
Demikian pula untuk gerbong hanya kembali
str.gsub!(/\n/, " ")
Pertama, ganti semua \ndengan spasi, lalu gunakan regex spasi putih hapus beberapa.
Gunakan String # gsub :
s = "Hello, my\n name is Michael."
s.gsub(/\s+/, " ")
"Hello,\nMy name is Michael". Idealnya Anda menginginkan ruang di mana ada\n
Use squish
currency = " XCD"
str = currency.squish
str = "XCD" #=> "XCD"
Anda dapat menambahkan hanya squishmetode (dan tidak ada yang lain) ke Ruby hanya dengan memasukkan Ruby Facet ini:
https://github.com/rubyworks/facets/blob/master/lib/core/facets/string/squish.rb
require 'facets/string/squish'
Kemudian gunakan
"my \n string".squish #=> "my string"
Tidak membutuhkan Rails.