ruby の配列の値にあるかどうかの判定はどうするのでしょうか?

たとえば、下記ですが、
check = %w(04 05 14 22)
hash のように check.value?('05') とかできないようです。どうかくのでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2008/03/13 21:54:20
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:moro No.2

回答回数23ベストアンサー獲得回数10

ポイント35pt

Array#include? もしくは Array#member? を使います。

個人的にはinclude?の方が好きなんですが、一部のエディタのシンタックスハイライトでinclude?が無駄にハイライトされるのがちょっと微妙です。(モジュールを読み込むincludeと勘違いされてると思われる/Rubyが悪いわけではない)

$ ruby -e'p %w(04 05 14 22).include?("05")'
true
$ ruby -e'p %w(04 05 14 22).include?("10")'
false

http://doc.loveruby.net/refm/api/view/method/Array/i/include=3f

その他の回答1件)

id:Bookmarker No.1

回答回数191ベストアンサー獲得回数34

ポイント35pt

Array - Rubyリファレンスマニュアル

include?(val)
配列が val と == において等しい要素を持つ時に真を返します。
id:moro No.2

回答回数23ベストアンサー獲得回数10ここでベストアンサー

ポイント35pt

Array#include? もしくは Array#member? を使います。

個人的にはinclude?の方が好きなんですが、一部のエディタのシンタックスハイライトでinclude?が無駄にハイライトされるのがちょっと微妙です。(モジュールを読み込むincludeと勘違いされてると思われる/Rubyが悪いわけではない)

$ ruby -e'p %w(04 05 14 22).include?("05")'
true
$ ruby -e'p %w(04 05 14 22).include?("10")'
false

http://doc.loveruby.net/refm/api/view/method/Array/i/include=3f

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません