這樣的內容Nokogiri要如何抓取
最後由 kennx 於2012-03-01 11:04:27 +0800回應
, 320次閱讀
<ul>
<li>列表1</li>
<li>列表2<em>2012-12-31</em></li>
<li><strong>important</strong>列表3</li>
<li><i>...</i>列表4<cite>...</cite></li>
</ul>
我想要li tag的內容,裏面的childnode我不需要。
有方法可以過濾嗎?官方文檔沒看明白
難道非得最後再用正則表達式做一次處理麼。
截至 2012-03-01 11:04:27 +0800,共收到 4 條回應
run26kimo
1樓, 於2012-02-29 18:53:02 +0800回應
不太明白是要取得那個 li 的內容?
kennx
2樓, 於2012-02-29 20:10:55 +0800回應
#1樓 @run26kimo 全部都要取。目前我是用正则搞定的。感觉上不是“优雅”。不知道nokogiri能不能直接做到。
cyanglee
3樓, 於2012-02-29 23:31:57 +0800回應
這是你要的結果嘛?
require "nokogiri"
xml =
"<ul>
<li>列表1</li>
<li>列表2<em>2012-12-31</em></li>
<li><strong>important</strong>列表3</li>
</ul>"
doc = Nokogiri::XML(xml)
doc.xpath('//li').each do |node|
node.xpath('text()').text # => "列表1", "列表2", "列表3"
end