如何从字符串中删除HTML标记

gab*_*lal 19 ruby-on-rails html-safe ruby-on-rails-3

比方说我有:

@string = "it is a <a href="#">string</a>"
Run Code Online (Sandbox Code Playgroud)

我想以两种方式在我的应用程序的不同部分使用它:

  • 带有可点击的链接
  • 没有可点击的链接(但没有显示任何HTML标记)

第一个可以使用html_safe:

@string.html_safe
Run Code Online (Sandbox Code Playgroud)

这是一个字符串

我怎样才能实现第二个?

这是一个字符串.

ant*_*ant 42

你可以试试这个:

ActionView::Base.full_sanitizer.sanitize(@string)
Run Code Online (Sandbox Code Playgroud)

请参阅strip_tags(html).


小智 8

你可以试试这个:

strip_tags(@string)
Run Code Online (Sandbox Code Playgroud)


小智 5

对于通用用途(例如网页刮刀):

puts Rails::Html::FullSanitizer.new.sanitize("<div>Hello</div><br>")
# Hello
Run Code Online (Sandbox Code Playgroud)