5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Ruby 初心者スレッド Part 23

933 :デフォルトの名無しさん:2008/12/29(月) 18:10:32
MechanizeがHpricotからNokogiriになってから、
挙動もかわってしまった。

require 'hpricot'
require 'nokogiri'
src = '<r>
<a>ほげ</a>
<a>ふが</a>
</r>'

doc = Hpricot(src)
node = doc.search('//a')[0]
puts node #-><a>ほげ</a>
puts node.next_sibling #-><a>ふが</a>

doc = Nokogiri(src)
node = doc.search('//a')[1]
puts node #-><a>ほげ</a>
puts node.next_sibling.to_s[0] #-> ¥n

みたいな違いが出ます。Nokogiriのほうが見栄えを良くするための
改行文字(空白文字)も正しくパースしているからだと
思うのですが,Hpricotの振る舞いの方が便利なこともある。
ソースを変更できないので質問なんですが,
Nokogiriで空白文字を無視する方法を知りませんか?
(何が必要な空白文字で,何が不要な空白文字かの判断は難しいですが,それはそれとして)
要するに,'<r><a>ほげ</a><a>ふが</a></r>'と解釈して読み込んでほしい。


282 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)