You are missing the 'm' flag which will allow '.' to match new lines

pre_match = /<pre>.*?<\pre>/m
block_match = /<blockquote>.*?:<p>.*?<\/p>.*?<\/blockquote>/m