Ryan,
I agree with Phlip. This has crossed into territory better served by a real HTML parser. Something like this (untested):
require 'hpricot' doc = Hpricot("Keep<pre>Toss</pre>Keep<blockquote>Toss<p>Toss</p>Toss</blockquote>")
doc.search("//pre").each do |pre| pre.remove end
doc.search("//blockquote").each do |bq| bq.remove end
puts doc