3

Ruby の Hpricot gem を使用して html を解析しています。他の場所で使用するためにドキュメントから 1 つのノードを削除したいのですが、方法が見つかりません。

Hpricot::Elements ( ) のインスタンスを使用して要素のリスト全体を削除できることがわかりましたが、特定のタグの最初のインスタンスx = (doc/"div").removeのみを削除したいと考えています。

いろいろ調べてみると、単に要素の内部テキストをコメント ノードまたは空白 ( x.inner_html = '') に置き換えるという提案が表示されますが、それではノードを他の場所で使用できなくなります。

私に何ができる?

仕様: Ruby 1.8.7、Hpricot 0.8.4

4

1 に答える 1

3

これを試して!

x = (doc/"div").first
x.parent.children.delete(x) unless x.nil?
于 2012-06-25T18:50:46.107 に答える