如何剥离HTML标记,包括转义的图像标记,而不使用' 和  东西?

THp*_*ubs 7 ruby-on-rails ruby-on-rails-3

我需要从我的内容中删除所有html元素.内容示例:

"<p><img alt=\"\" src=\"/ckeditor_assets/pictures/1/content_twitter-sink.jpg\" style=\"width: 570px; height: 399px;\" /></p>\r\n\r\n<h3 style=\"font-size: 1.38462em; margin: 1em 0px 0px; font-weight: 600; line-height: 1.2; font-family: freight-sans-pro, sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizelegibility; color: rgb(46, 46, 46);\">Soraya Calavassy, communications manager at the Award in Australia,&nbsp;shares her organisation&#39;s experience&nbsp;piloting our new global visual identity.</h3>\r\n\r\n<p style=\"margin: 0.5em 0px 0px; text-rendering: optimizelegibility; font-size: 1.30769em; line-height: 1.3; color: rgb(78, 78, 78); font-family: freight-sans-pro, sans-serif;\">&quot;While Australia has a very strong brand locally, there are some great benefits for incorporating"
Run Code Online (Sandbox Code Playgroud)

当显示帖子时我使用raw,它确实给了我需要的输出.但我需要制作摘录.为此,我需要删除所有HTML标记,甚至删除图像.但是当我使用消毒时, 它不会删除图像.如果我使用strip_tags,它将删除图像,但它会添加&#39;撇号,&nbsp;空间等.那么,如何获得没有图像和没有&nbsp;东西的干净摘录?

jvn*_*ill 15

尝试 strip_tags(text).html_safe

  • 在Rails 4.2.3中工作.再见&12; 和&13; 码. (3认同)

小智 5

不适用于rails 4.1

只有这样才能将strip_tags与gsub函数结合起来(链接如下)

Ruby gsub字符串中的多个字符

所以在帮手中,我会这样做:

def format_text(string)
    strip_tags(string).gsub("&nbsp;", "").gsub("&#39;", "'")
end
Run Code Online (Sandbox Code Playgroud)