Rubyの２次元配列から指定値を取得したい


ruby(ver2)の勉強中です。 ２次元配列から指定値を取得する際の  
コードイメージがつかず、どなたかご教授頂ければと存じます。

２次元配列の内容

[code]

    [
      ["北海道", "ヤマダ", "２２歳"],
      ["東京", "タナカ", "２３歳"],
      ["大阪", "サトウ", "２２歳"]
    ]
    
[/code]

希望の動き

[code]

    1:getsで指定値を入力
    2:北海道で検索すると、["北海道", "ヤマダ", "２２歳"]の配列を取得
    3:２２歳で検索すると["北海道", "ヤマダ", "２２歳"]と["大阪", "サトウ", "２２歳"]を取得
    
[/code]

恐れ入りますが、よろしくお願いします




実用的コードかは置いておくとして、とりあえずこんな感じのコードで希望の動きができるかと思います。

これでイメージはつかめますでしょうか。

[code]

    search_word = gets.chomp
    
    result = []
    
    data_array = [
      ["北海道", "ヤマダ", "２２歳"],
      ["東京", "タナカ", "２３歳"],
      ["大阪", "サトウ", "２２歳"]
    ]
    
    data_array.each {|data|
      result.push data if data.include? search_word
    }
    
    p result
    
[/code]

参考サイト

each  
<http://ref.xaio.jp/ruby/classes/array/each>

push  
<http://ref.xaio.jp/ruby/classes/array/push>

include  
<http://ref.xaio.jp/ruby/classes/array/include>




実用的コードかは置いておくとして、とりあえずこんな感じのコードで希望の動きができるかと思います。

これでイメージはつかめますでしょうか。

[code]

    search_word = gets.chomp
    
    result = []
    
    data_array = [
      ["北海道", "ヤマダ", "２２歳"],
      ["東京", "タナカ", "２３歳"],
      ["大阪", "サトウ", "２２歳"]
    ]
    
    data_array.each {|data|
      result.push data if data.include? search_word
    }
    
    p result
    
[/code]

参考サイト

each  
<http://ref.xaio.jp/ruby/classes/array/each>

push  
<http://ref.xaio.jp/ruby/classes/array/push>

include  
<http://ref.xaio.jp/ruby/classes/array/include>

