我正在尝试将特殊符号({W} {B} {U}等)转换为各自的颜色,所以我写了一个案例,但我认为一个案例不是我需要的,因为它一旦找到它就会结束一场比赛.
print 'Test a Color'
color = gets.chomp
case color
when '{W}'
puts 'White'
when '{R}'
puts 'Red'
when '{G}'
puts 'Green'
when '{U}'
puts 'Blue'
when '{B}'
puts 'Black'
end
Run Code Online (Sandbox Code Playgroud)
{B}让我变黑,{U}得到我的蓝色.{U} {B}崩溃/什么都不返回.我怎么会让它继续下去?
检查下面.
print "Test a Color"
color = gets.chomp
hash = {
'{W}' => 'White',
'{R}' => 'Red'
}
# finding by regex and replace with what you want.
puts color.gsub(/\{.+?\}/){|k| hash[k] || k }
Run Code Online (Sandbox Code Playgroud)