searching tables for a pattern that is in some other text

suppose I have a text file and I am looking for a pattern in that file of the regex form: /^\s*#{label}\s*:?\s*(.*)/i Where 'label' is a variable, but I want to do something like this:

labels.each do |lab|   if line =~ /^\s*#{lab}\s*:?\s*(.*)/i     matched = lab   end end

If labels are stored in the database, is there a good faster way to do this ?

Postgresql understands the SIMILAR TO command, which uses a SQL version of regular expressions: PostgreSQL: Documentation: 8.3: Pattern Matching

Not sure if that is general SQL or postgres specific though, and I'd also image the SQL regular expressions are a little less powerful, but you may be able to accomplish what you want.