Я мог бы легко создать регулярное выражение, которое будет анализировать ваш HTML-фрагмент.
Однако я хотел бы призвать вас привыкнуть использовать синтаксический анализатор XML / HTML для взаимодействия с HTML.
require 'nokogiri'
require 'open-uri'
doc = Nokogiri::HTML(open(url))
output = doc.css('div h3 a').each do |link|
puts link.attr("href")
end
См. RegEx соответствует открытым тегам, за исключением автономных тегов XHTML для убедительного аргумента против использования регулярных выражений для анализа HTML.
== EDIT == изменено накаждый цикл