Відповіді:
перевірити squish
метод Rails :
some_string.strip.gsub(/\s+/, " ")
саме те, що робить кабачки.
squish
Для ілюстрації Рубіса, вбудованого в стиск :
string.gsub("\n", ' ').squeeze(' ')
squeeze(' ')
просто видавлює пробіли. "Squeeze my application's copy".squeeze(' ') => "Squeeze my application's copy"
.
цей регулярний вимір замінить екземпляр 1 або більше пробілів на 1 пробіл, ps \s
замінить усі символи пробілу, що включає \s\t\r\n\f
:
a_string.gsub!(/\s+/, ' ')
Аналогічно лише для повернення вагона
str.gsub!(/\n/, " ")
Спочатку замініть все \n
на пробіл, а потім скористайтеся видаленням кількох регексів пробілу.
Використовуйте рядок # gsub :
s = "Hello, my\n name is Michael."
s.gsub(/\s+/, " ")
"Hello,\nMy name is Michael"
. В ідеалі ви хотіли б місця, де є\n
Ви можете додати лише squish
метод (і більше нічого) до Ruby, включивши лише цю Ruby Facet:
https://github.com/rubyworks/facets/blob/master/lib/core/facets/string/squish.rb
require 'facets/string/squish'
Потім використовуйте
"my \n string".squish #=> "my string"
Не потрібні рейки.