Ruby 1.8.7を使用して配列内の値を見つける方法はありますか?配列内の値を見つける
答えて
私は(値)あなたが特定の値が配列内に存在し、その場合は、あなたが#には、配列を使用することができるかどうかを見つけるためにしようとしていることを推測している:
a = [1,2,3,4,5]
a.include?(3) # => true
a.include?(9) # => false
ますか?他の何かを意味する、Ruby Array API
私はArray#indexを使用しますが、Ruby Array APIをチェックすることは素晴らしいヒントです。 –
Array.selectまたはArray.indexを使用してください。
用途:
myarray.index "valuetoFind"
あなたの配列に値が含まれていない場合は、あなたがしたいかnil要素のインデックスを返します。
このようにしますか?
a = [ "a", "b", "c", "d", "e" ]
a[2] + a[0] + a[1] #=> "cab"
a[6] #=> nil
a[1, 2] #=> [ "b", "c" ]
a[1..3] #=> [ "b", "c", "d" ]
a[4..7] #=> [ "e" ]
a[6..10] #=> nil
a[-3, 3] #=> [ "c", "d", "e" ]
# special cases
a[5] #=> nil
a[5, 1] #=> []
a[5..10] #=> []
などですか?
a = [ "a", "b", "c" ]
a.index("b") #=> 1
a.index("z") #=> nil
お返事ありがとうございます。
私はこのようでした:
puts 'find' if array.include?(value)
私はこの質問が既に回答されているけど、私はいくつかの基準に基づいて、配列内の要素をフィルタリングする方法を探してここに来ました。だからここに私の解決策の一例である:私はそのアレイ#1のgrepは、より良い作品を発見した一方で:select
を使用して、私は「RUBY_」
Class.constants.select {|c| c.to_s =~ /^RUBY_/ }
で始まるクラス内のすべての定数はUPDATE見つけます。上記の例では、
Class.constants.grep /^RUBY_/
でした。
その間、私はArray#grepがはるかに優れていることを発見しました。上記の例でさえ、 'Class.constants.grep/^ RUBY_ /'はこのトリックを行いました。 – mydoghasworms
この回答は、受け入れられた回答が現在書かれているように問題に対処していないことを認識しているすべての人のためのものです。
質問の回答方法は配列内の値です。受け入れられた答えは値が存在するかどうかをチェックする方法を示していますは配列にあります。
すでにindex
を使用した例がありますので、select
メソッドを使用した例を提供しています。
1.9.3-p327 :012 > x = [1,2,3,4,5]
=> [1, 2, 3, 4, 5]
1.9.3-p327 :013 > x.select {|y| y == 1}
=> [1]
@マークトーマスはあなたの主張が間違っているという私の答えの一部を引用して喜んでそれを更新します。私はここで英語を使っていると仮定しています(言葉の定義を構成していません)。そして、何千人もの人々がGoogleで "ruby FIND value in array"を検索したとき、彼らは最初の結果としてこの質問を見ているので、実際に正しい答えを得るのが大好きだと確信しています。 –
さらに、@ MarkThomasが正しければ、この質問はhttp://stackoverflow.com/questions/1986386/check-if-value-exists-in-array-in-rubyと重複しているので閉じてください。配列内の「発見」と「存在を確認する」との機能的な違い。 –
私は古い質問を復活させ、ほとんどまたはそれ以上の物質を提供してくれる人々にアレルギーです。これはたくさん起こります。あなたのケースでは、2009年に回答として「選択」がすでに提供されていましたが、少し良いサンプルスニペットを提供しました。だから私はそれを再考した後、私が以前に言ったことを撤回する。 –
Array#select
を使用すると、条件を満たす要素の配列が得られます。それ以外の場合は
array = [1,2,3]
found = array.select {|e| e == 3} #=> [3]
found = array.detect {|e| e == 3} #=> 3
あなたのような厄介な何かをする必要があると思います:あなたはあなたの基準を満たしている配列から要素を取得する方法を探しているなら、Enumerable#detect
は行くには良い方法だろう
found = array.select {|e| e == 3}.first
あなたは値が#includes?
を除き、アレイ内に存在するかどうかを確認するにはArray#find
arr = [1,2,6,4,9]
arr.find {|e| e%3 == 0} #=> 6
arr.select {|e| e%3 == 0} #=> [ 6, 9 ]
6.in?
を使用し、配列から一つの値を見つけたい場合は、任意のオブジェクトのために働くactivesupportのは、#include?
に応答したときにも#in?
を使用することができます。
arr = [1, 6]
6.in? arr
#=> true
- 1. 配列内の値を1つずつ見つける
- 2. 配列内のevensを見つける
- 3. 配列内のモードを見つける
- 4. 配列内のパターンを見つける
- 5. PHP配列内の異なる値を見つける
- 6. 配列内に値のあるオブジェクトを見つける
- 7. numpy配列内の値リストのインデックスを見つける
- 8. JavaScriptの配列内の値を見つける
- 9. NSMutable配列内の複数の値を見つける
- 10. 配列内の最小値のインデックス番号を見つける
- 11. 配列内の値を見つけて取得する方法
- 12. 配列内の異常な値を見つけるリスト
- 13. 配列内の配列要素のインデックスを見つける
- 14. ルビ配列内の空の配列を見つけるRails 4
- 15. MIPSエラー - 配列内で最大値を見つける
- 16. fasta配列内のヌクレオチド部分配列を見つける
- 17. PHP多次元配列内の配列を見つける
- 18. Google Appsスクリプトは配列内の値を見つけます
- 19. 配列 - 配列内に見つからない数字を見つける
- 20. PostgreSQLの配列列内の文字列を見つける
- 21. 配列内の配列をjavacriptで見つけよう
- 22. ハッシュ内の配列内の要素を見つける
- 23. 2つの配列で重複する値を見つける
- 24. 2つの配列で一致する値を見つける
- 25. 8 * 720配列の各列の最小値を見つける?
- 26. 同じポイントで3つの配列の値を見つける
- 27. 文字列内の配列を見つける
- 28. ポインタで配列内の文字列を見つける
- 29. 配列内の文字列を見つける
- 30. Javaが配列内に3つのnumを見つける
、私はここで初心者だ、と私は、このツールを使用することを学んでいる、私はみますここに投稿する前に答えを見つけてください。 –
この種の質問に不平を言うすべての人に:FAQを読んでください: '質問はあまりにも些細なものでも初心者でもない'。あなたが質問が好きでないなら、それに答えることはしないでください。その質問がすでに尋ねられ、SOに答えられている場合は、それを必ず重複としてマークしてください。しかし、新しい人たちが新しい人であることを嫌う理由はない。 –