这适用于任何包含空格的字符串
str.downcase.tr!(" ", "_")
但是没有空格的字符串会被删除
所以“New School”会变成“new_school”,但“color”会变成“”,没什么!
最佳答案
将“_”作为参数传递给 parameterize(separator: '-') .对于 Rails 4 及以下版本,使用 str.parameterize('_')
例子:
with space
str = "New School"
str.parameterize(separator: '_')
=> "new_school"
without space
str = "school"
str.parameterize(separator: '_')
=> "school"
您也可以通过链接 underscore 来解决这个问题参数化。
例子:
with space
str = "New School"
str.parameterize.underscore
=> "new_school"
without space
str = "school"
str.parameterize.underscore
=> "school"
关于ruby-on-rails - 如何用 ruby 安全地用下划线替换所有空格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7547065/