Misalkan kita memiliki string seperti ini:
Hello, my\n name is Michael.
Bagaimana saya bisa menghapus baris baru itu dan menghapus spasi tersebut setelah itu menjadi salah satu bagian dalam string untuk mendapatkan ini?
Hello, my name is Michael.
some_string.strip.gsub(/\s+/, " ")
yang persis seperti yang dilakukan squish.squish
Untuk mengilustrasikan Ruby built in squeeze :
sumber
squeeze(' ')
hanya meremas ruang."Squeeze my application's copy".squeeze(' ') => "Squeeze my application's copy"
.Cara termudah mungkin adalah
sumber
Coba ini:
sumber
sumber
\n
idealnya (saya rasa) itu harus diganti dengan spasi jika terjadi sesuatu seperti"Hello,\nMy name is Michael"
regex ini akan mengganti instance dari 1 atau lebih spasi putih dengan 1 spasi, ps
\s
akan mengganti semua karakter spasi yang meliputi\s\t\r\n\f
:Demikian pula untuk gerbong hanya kembali
Pertama, ganti semua
\n
dengan spasi, lalu gunakan regex spasi putih hapus beberapa.sumber
Gunakan String # gsub :
sumber
"Hello,\nMy name is Michael"
. Idealnya Anda menginginkan ruang di mana ada\n
sumber
Anda dapat menambahkan hanya
squish
metode (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
Kemudian gunakan
Tidak membutuhkan Rails.
sumber