正規表現はじめました?

htmlを読み込んで、titleを持ってこようとしたんですがそのうまいやり方が浮かばない。。。

xmlならrexmlライブラリを使ってXPathでなんとかなる気がするんだけど、htmlを操作するのに良いライブラリって絶対あると思うんだけど知識不足がたたってわかりません。誰か知りませんかねぇ?
で、しょうがないから正規表現使って""と""で挟まれている部分を持ってくるかと考えるようになりました。あ、これも大文字と小文字を判別しないようにしなきゃいけないか。

ところが正規表現もイマイチ習得できてない!というか書き方をちょっと覚えては忘れの繰り返しです。あー、また書き方を覚えなきゃ。やりたい事はごく簡単な気がするんだけどなぁ。。。これから勉強しまーす。

追記

とりあえずの解。

if /<title>(.+)<\/title/ =~ page.downcase
  puts NKF.nkf('-E -w',$1)
end

とりあえずpageはhtmlが入っている文字列として、その文字列の大文字を全部小文字にして、正規表現にかけて一時的に出力してみました。
正規表現は"<title>"と"</title"に囲まれた任意の文字列を取得するようにしてみました。
NKF.nkfeuc-jpの入力からターミナルがutf8なんでutf8に変換するように指定。あ、でもこれだとshift-jisのページを読み込むとおかしくなるか。。NKF.guessで入力を判別してみるのが正解なのだろうか。