2007-12-18から1日間の記事一覧

Rubyめも

Mutex#synchronize synchronizeの途中でnextを使うとイテレータブロックを抜けるが,breakと動作の違いがあるか気になったため検証したところ,どちらも同じ動作(単純にsynchronizeブロックを抜けて次の行に行く)となった.ただし,プログラムの見た目的には…

XPathめも(兄弟関係を表す軸)

following-sibling::* 自分のノードの後続する兄弟.ほんとは4番目の要素を指したいけど,3番目の要素にしか名前(classとかidとか)が付いてない! みたいなときに便利. following-sibling::*[2]とやると,自分より(document order的に)2つ後の兄弟を指す. p…

XPathおもしろ

最近,RubyのWWW::Mechanizeで遊んでいます. WWW::Mechanizeは内部的にHpricot(HTML文書スクレイパ)を使っており,WWW::Mechanize経由でHpricotにsearchメソッドなどを送れるわけですが,このときにXPath式を渡すことで,目的の部分のHTML要素を得ることが…