よしみです。

> htreeをみると似たような機能を提供していますね。
> どちらの使い勝手が良いでしょうか?
最近だとかなり使い勝手が良くて速いHpricotというやつがあるようです。
rubygemsでもインストールできるのでインストールもしやすいです。

このケースであれば、

require 'rubygems'
require 'hpricot'
doc = Hpricot(%{<a class=l href="hogehoge">bar</a>baz})
doc.search("a").map {|i| [ i['href'], i.inner_html ] }
  #=> [["hogehoge", "bar"], ["foo", "baz"]]

こんな感じにすごく簡単に要素を抜き出すことが出来ます。
詳しくは
http://code.whytheluckystiff.net/hpricot/wiki/AnHpricotShowcase
あたりでも見てみると良いと思います。

ちなみにHTMLがらみの正規表現は"や/などのエスケープしなければならない文字列が大量発生するので%r{ .. }などを使うと後から読みやすくて良いと思います。