Ruby 2.6.0 リファレンスマニュアル > ライブラリ一覧 > matrixライブラリ > Matrixクラス > find_index

instance method Matrix#find_index

index(value, selector = :all) -> [Integer, Integer] | nil[permalink][rdoc]
index(selector = :all) {|e| ... } -> [Integer, Integer] | nil
index(selector = :all) -> Enumerator
find_index(value, selector = :all) -> [Integer, Integer] | nil
find_index(selector = :all) {|e| ... } -> [Integer, Integer] | nil
find_index(selector = :all) -> Enumerator

指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。

複数の位置で値が一致する/ブロックが真を返す、場合は最初 に見つかった要素の位置を返します。

selector で行列のどの部分を探すかを指定します。この引数の意味は Matrix#each を参照してください。



require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ [1,1], [1,1] ].index(1, :strict_lower) # => [1, 0]

value を指定せず、さらにブロックを省略した場合、 Enumerator を返します。

[PARAM] value:
探索する値
[PARAM] selector:
探索範囲