我有一個來自所見即所得的大型HTML字符串,並且想要顯示只是文本的截斷字符串,沒有html或html標記。有沒有辦法做到這一點內置到rails或我需要一個gsub來擺脫所有的html括號?rails,給出所見即所得的HTML字符串 - 如何獲得文本
感謝
我有一個來自所見即所得的大型HTML字符串,並且想要顯示只是文本的截斷字符串,沒有html或html標記。有沒有辦法做到這一點內置到rails或我需要一個gsub來擺脫所有的html括號?rails,給出所見即所得的HTML字符串 - 如何獲得文本
感謝
Rails已經包含了一些功能強大的sanitization helpers。
string = '<span id="span_is"><br><br><u><i>Hi</i></u></span>'
strip_tags(string)
這取決於你的HTML是多麼複雜,但你肯定可以使用Nokogiri和的XPath查詢您從HTML所需的文本。這取決於你想分析多少,以及是否證明一個額外的圖書館能夠做到這一點。
一個解析器可以做到這一點,但如果你有簡單的HTML呈現將會矯枉過正。諸如Loofah或sanitize之類的東西可以使用Nokogiri去掉所有標籤來解析HTML,然後去掉標籤,留下文本。
require 'sanitize'
html = '<html><body>Jackdaws love my giant sphinx of quartz.</body></html>'
puts Sanitize.clean(html)
# >> Jackdaws love my giant sphinx of quartz.
我認爲絲瓜是超過了sanitize能力更強,但如果你想要做的就是折騰標籤的sanitize走可能是要走的路。
這很不錯,但它留下了很多「 」 – AnApprentice 2010-11-27 16:46:12