Rubyを使用してドキュメントからHTMLタグを削除する方法の例はたくさんあります。HpricotとNokogiriには、すべてのHTMLを簡単かつ迅速に削除するinner_textメソッドがあります。
私がやろうとしているのは逆で、HTMLドキュメントからすべてのテキストを削除し、タグとその属性だけを残します。
私はinner_htmlをnilに設定するドキュメントをループすることを検討しましたが、最初の要素(ルート)にはドキュメントの残り全体のinner_htmlがあるため、実際にはこれを逆に行う必要があります。理想的には、最も内側の要素であり、祖先を上に移動しながら、inner_htmlをnilに設定します。
これを効率的に行うためのちょっとしたコツを知っている人はいますか?私はおそらく正規表現がそれを行うかもしれないと思っていましたが、おそらくHTMLトークナイザー/パーサーほど効率的ではありません。