Ruby on rails 如何在RubyonRails中用换行符替换空格?

Ruby on rails 如何在RubyonRails中用换行符替换空格?,ruby-on-rails,ruby,replace,Ruby On Rails,Ruby,Replace,我试图用Ruby on Rails中的换行符替换字符串中的空格 name = 'john smith' 到目前为止,我已经尝试了以下方法: name.gsub!(" ", "\n") name.gsub!(" ", "<br>") name.sub(" ", "\n") name.sub(" ", "<br>") name.gsub!(“”,“\n”) name.gsub!(“”,“”) name.sub(“,”\n”) name.sub(“,””)

我试图用Ruby on Rails中的换行符替换字符串中的空格

name = 'john smith'
到目前为止,我已经尝试了以下方法:

name.gsub!(" ", "\n")   
name.gsub!(" ", "<br>")

name.sub(" ", "\n")   
name.sub(" ", "<br>")
name.gsub!(“”,“\n”)
name.gsub!(“”,“
”) name.sub(“,”\n”) name.sub(“,”
”)

但是以上这些都不起作用。

在用html打印时,您需要使用它,否则rails将跳过标记

= raw name.gsub(" ", "<br>")
=原始名称.gsub(“,”
”)
在用html打印时,需要使用rails,否则rails将跳出标记

= raw name.gsub(" ", "<br>")
=原始名称.gsub(“,”
”)
试试另一个:

<%= name.gsub(" ", "<br>").html_safe %>

  • html_安全:
将字符串标记为受信任的安全字符串。它将被插入到HTML中,而不执行其他转义

"<a>Hello</a>".html_safe
#=> "<a>Hello</a>"

nil.html_safe
#=> NoMethodError: undefined method `html_safe' for nil:NilClass
“你好”。html\u安全
#=>“你好”
零。html_安全
#=>NoMethodError:nil:NilClass的未定义方法“html\u safe”
  • 原始:
raw只是html_-safe的包装器。如果字符串可能为零,则使用raw

raw("<a>Hello</a>")
#=> "<a>Hello</a>"

raw(nil)
#=> ""
raw(“你好”)
#=>“你好”
未加工(无)
#=> ""
试试另一个:

<%= name.gsub(" ", "<br>").html_safe %>

  • html_安全:
将字符串标记为受信任的安全字符串。它将被插入到HTML中,而不执行其他转义

"<a>Hello</a>".html_safe
#=> "<a>Hello</a>"

nil.html_safe
#=> NoMethodError: undefined method `html_safe' for nil:NilClass
“你好”。html\u安全
#=>“你好”
零。html_安全
#=>NoMethodError:nil:NilClass的未定义方法“html\u safe”
  • 原始:
raw只是html_-safe的包装器。如果字符串可能为零,则使用raw

raw("<a>Hello</a>")
#=> "<a>Hello</a>"

raw(nil)
#=> ""
raw(“你好”)
#=>“你好”
未加工(无)
#=> ""

将字符串标记为
html\u-safe
时必须小心,尤其是当它可能包含用户输入时:

name = 'john smith<script>alert("gotcha")</script>'

name.gsub(' ', '<br>').html_safe
#=> "john<br>smith<script>alert(\"gotcha\")</script>"
如您所见,只有

标记保持完整,其余部分正确转义

有几个帮助程序用于构建安全字符串以及构建HTML标记。在您的情况下,我会使用和:

name='john smithalert(“抓住了”)'
安全连接(名称、拆分(“”)、标记(:br))
#=>“john
smithscriptalert(“gotcha”)/script”
将字符串标记为
html\u-safe
时必须小心,尤其是当它可能包含用户输入时:

name = 'john smith<script>alert("gotcha")</script>'

name.gsub(' ', '<br>').html_safe
#=> "john<br>smith<script>alert(\"gotcha\")</script>"
如您所见,只有

标记保持完整,其余部分正确转义

有几个帮助程序用于构建安全字符串以及构建HTML标记。在您的情况下,我会使用和:

name='john smithalert(“抓住了”)'
安全连接(名称、拆分(“”)、标记(:br))
#=>“john
smithscriptalert(“gotcha”)/script”
“以上所有措施均无效”-这意味着什么?有任何错误或意外结果吗?“以上都不起作用”——这是什么意思?任何错误或意外的结果?感谢这些有用的信息,非常感谢!!感谢您提供的有用信息,非常感谢!!