ruby 演算子 "=~" [重複] 質問する

ruby 演算子

Rubyでは、いくつかの演算子を読みましたが、 が見つかりませんでした=~。 は何=~のためにあるのでしょうか、または何を意味するのでしょうか? 私が見たプログラムには

regexs = (/\d+/)
a = somestring
if a =~ regexs

数字に等しいかどうかを比較していたと思いますsomestringが、他の使用方法はありますか? また、演算子の適切な定義は何ですか=~?

ベストアンサー1

この=~演算子は正規表現を文字列と照合し、一致が見つかった場合は文字列からの一致のオフセットを返し、そうでない場合は nil を返します。

/mi/ =~ "hi mike" # => 3 
"hi mike" =~ /mi/ # => 3 

"mike" =~ /ruby/ # => nil 

上記のように、文字列/正規表現を演算子のどちらの側にも配置できます。

おすすめ記事