require 'nokogiri' html = '
foo banana 1
this textbar
foo banana 2
foo banana 3
else
foo
foo
foo
' keywords = ["else", "banana", "nomatch"] doc = Nokogiri::HTML(html) total_matches = 0 keywords.each do |keyword| p "searching for:"+keyword elements = doc.search('p:contains("'+keyword+'")') if(elements) elements.each do |element| total_matches=total_matches+1 p element.text end else p "NO MEANS NO!" end p "============" end p "total matches for keywords:" + total_matches.to_s