Rails アプリケーションで動的な正規表現を作成したいと考えています。データベースで呼び出されるテーブルがありfoo
ます。foo
2 つの列で構成されておりid
、phrase
これは単に varchar(255) です。すべての「フレーズ」インスタンスが結合された 1 つの巨大な式を作成し、入力パラメーターがフレーズ内の単語のいずれかと一致するかどうかを確認できるようにしたいと考えています。以下のようにすればうまくいくのではないかと思ったのですが、うまくいきません。私は何を間違っていますか?
# get all phrases
phrases = Foo.all.map(&:phrase)
regex = Regexp.new phrases.join('|')
if params[:some_text] =~ regex
# something in params[:some_text] matched at least one phrase
end