我试图将单词/字符串转换为Ruby中的数字,例如: -
ONE => 1
TWO => 2
THREE => 3
FOUR => 4
etc...
我见过很多其他例子(数字到单词);但是,我无法找到如何将单词转换为数字的示例。如果我能得到任何见解或帮助,那就太棒了。
答案 0 :(得分:0)
这可能会有所帮助:http://www.rubyquiz.com/quiz25.html
编辑:错误地阅读问题。根据我在下面的评论,这里有一种方法可以解决这个问题。
如果num_to_word(number)是从数字转换为单词的方法:
def number_hash_creator(min, max)
number_hash = {}
for num in (min..max)
number_hash[num_to_word(num)] == num
end
number_hash
end
然后执行以下操作:
number_hash = number_hash_creator(min, max) # min and max are whatever you need them to be
number_hash['three']
=> 3
您还可以在字符串类中添加类似的方法,以便您可以执行"three".to_number
答案 1 :(得分:0)
我为所有单词创建了一个最多二十个的哈希值,并且只为数十(三十,四十,五十等)创建了一个哈希。使用Reg-ex取出两个单词并添加它们,例如二十二个是添加20 + 2 = 22;现在我的脚本只能工作到100,但它可以扩展到超过100的数字,依此类推。
答案 2 :(得分:0)
我认为您会发现本教程非常有趣,特别是底部附近的代码: