タグ

ブックマーク / qiita.com/A-gen (1)

  • Rubyの正規表現リテラルは左辺においたほうがいいんじゃないの? って話 - Qiita

    なんで? 正規表現で使われる=~の実態はRegexp#=~なんですが、この時 右辺に使えるのはStringだけ です。 ついでに、String#=~はRegexp#=~のシンタックスシュガーで、これによって辺を交換しても動作します。 (参照: http://osdir.com/ml/lang.ruby.japanese/2007-05/msg00058.html ) 世間(というか自分の周り)では、"Hello" =~ /e/と書くほうが圧倒的に多く、 それどころか/e/ =~ "Hello"と書けるのかどうか自信ない、なんて人もいました。 ところで、Object#=~があるのもあって、一応5 =~ /5/なんて書くこともできます。 結果はnilです。 これは"5" =~ /5/あるいは5.to_s =~ /5/と書けば意図通りです。 もちろん/5/ =~ 5とは 書けません。前述のとおり

    Rubyの正規表現リテラルは左辺においたほうがいいんじゃないの? って話 - Qiita
  • 1