Я задаю вопросы Test-First Learn Ruby, и для вопроса Словаря он просит определить метод «найти», который берет строку в качестве параметра для поиска по клавишам hash, содержащий слова и возвращающие пары значений ключа, строка соответствует ключу. Он должен удовлетворять следующим ситуациям:Поиск слов из хэша с использованием регулярных выражений в Ruby
it 'finds multiple matches from a prefix and returns the entire entry (keyword + definition)' do
@d.add('fish' => 'aquatic animal')
@d.add('fiend' => 'wicked person')
@d.add('great' => 'remarkable')
@d.find('fi').should == {'fish' => 'aquatic animal', 'fiend' => 'wicked person'}
end
Мои знания о регулярных выражениях невелики. Я немного теряю, что делать здесь. Помогите? Я думаю, что вполне могу заставить его вернуть пары ключевых значений, учитывая, что строка ключа полностью совпадает, но для этого частичного соответствия я озадачен.
Чтобы следить за этим ответом, проверьте [официальный Рубиновый Docs, чтобы узнать больше о хэшей] (http://www.ruby-doc.org/core-2.0/Hash.html). – aceofbassgreg
Спасибо, как ни странно, я наткнулся на Rubular, поскольку я пытался это обработать, я в конечном итоге работал с регулярным выражением hash.has_key? (/^# {String}. * /) – Rob