Regexpを使ってみる

Regexpとは?

正規表現のクラスのことです。

hoge = Regexp.new('hogehoge')
# => /hogehoge/

このように正規表現のスラッシュで囲まれた形式でオブジェクトを作成します。

# 配列を用意
array = %w(hoge fuga)
# => ["hoge", "fuga"]

# 配列を|(OR条件)で結合した、正規表現を返す
regexp = Regexp.new(array.join('|'))
# => /hoge|fuga/

union

# 配列を用意
array = %w(hoge fuga)
# => ["hoge", "fuga"]

# 配列を|(OR条件)で結合した、正規表現を返す
regexp = Regexp.union(array)
# => /hoge|fuga/

配列操作をしなくても、unionを使うとこで、直感的に正規表現を作成することができます。