Answers:
查看Rails squish方法:
some_string.strip.gsub(/\s+/, " ")squish所做的。
squish
为了说明内置于squeeze中的 Ruby :
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空格替换所有空格,然后使用删除多个空格正则表达式。
使用String#gsub:
s = "Hello, my\n name is Michael."
s.gsub(/\s+/, " ")
"Hello,\nMy name is Michael"。理想情况下,您想要一个有空间的空间\n
您可以squish通过仅包含以下Ruby Facet来向Ruby 添加方法(而不添加其他方法):
https://github.com/rubyworks/facets/blob/master/lib/core/facets/string/squish.rb
require 'facets/string/squish'
然后使用
"my \n string".squish #=> "my string"
不需要Rails。