hpricot:Hpricot::Elements#/, #search
>> require "hpricot" => true >> doc = Hpricot('<p>foo1</p><p>foo2</p>') => #<Hpricot::Doc {elem <p> "foo1" </p>} {elem <p> "foo2" </p>}> >> doc / :p => #<Hpricot::Elements[{elem <p> "foo1" </p>}, {elem <p> "foo2" </p>}]> >> doc / "p" => #<Hpricot::Elements[{elem <p> "foo1" </p>}, {elem <p> "foo2" </p>}]> >> (doc / "p")[0] => {elem <p> "foo1" </p>} >> (doc / "p")[1] => {elem <p> "foo2" </p>} >> (doc / "p")[2] => nil >> doc.search :p => #<Hpricot::Elements[{elem <p> "foo1" </p>}, {elem <p> "foo2" </p>}]> >> doc.search "p" => #<Hpricot::Elements[{elem <p> "foo1" </p>}, {elem <p> "foo2" </p>}]> >> doc.search "//p" => #<Hpricot::Elements[{elem <p> "foo1" </p>}, {elem <p> "foo2" </p>}]> >> (doc / "p").search("p") => #<Hpricot::Elements[]> >> (doc / "p").search("*") => #<Hpricot::Elements[{elem <p> "foo1" </p>}, "foo1", {elem <p> "foo2" </p>}, "foo2"]>