Предполагается, что метод Ruby gsub string принимает хеш. Как написано здесь:
http://www.ruby -doc.org / ядро / классов / String.html # M001185
"Если вторым аргументом является Hash, а сопоставленный текст является одним из его ключей, соответствующее значение является строкой замены."
Они приводят пример:
'hello'.gsub(/[eo]/, 'e' => 3, 'o' => '*') #=> "h3ll*"
Проблема в том, что у меня это не работает (ruby 1.8.7):
in `gsub': can't convert Hash into String (TypeError)
Это происходит для точно такой же строки. Почему?