Рубин на рельсах переключатель [дубликат]


этот вопрос уже есть ответ здесь:

может ли кто-нибудь привести пример использования switch case в Ruby для переменной?

1 54

1 ответ:

Я предполагаю, что вы ссылаетесь на случай/когда.

case a_variable # a_variable is the variable we want to compare
when 1    #compare to 1
  puts "it was 1" 
when 2    #compare to 2
  puts "it was 2"
else
  puts "it was something else"
end

или

puts case a_variable
when 1
  "it was 1"
when 2
  "it was 2"
else
  "it was something else"
end

EDIT

то, что, возможно, не все знают, но что может быть очень полезно, Так это то, что вы можете использовать регулярные выражения в операторе case.

foo = "1Aheppsdf"

what = case foo
when /^[0-9]/
  "Begins with a number"
when /^[a-zA-Z]/
  "Begins with a letter"
else
  "Begins with something else"
end
puts "String: #{what}"