Tintin81
Tintin81

Reputation: 10207

How to retrieve value from multidimensional array in Ruby?

What's the simplest way to retrieve English from this array by providing en?

LANGUAGES = [
  ['English', 'en'],
  ['Deutsch', 'de']
]

Upvotes: 1

Views: 146

Answers (2)

Tobias Schoknecht
Tobias Schoknecht

Reputation: 550

if you only want to access it from the code to the language: how about using a hash?

LANGUAGES = {
  'en' => 'English',
  'de' => 'Deutsch'
}
LANGUAGES['en']
=> "English"

Upvotes: 1

Dogbert
Dogbert

Reputation: 222040

Array#rassoc fits your use case perfectly.

LANGUAGES = [
  ['English', 'en'],
  ['Deutsch', 'de']
]
LANGUAGES.rassoc("en")[0]
=> "English"

Upvotes: 10

Related Questions