我遇到了这个Ruby脚本:
frequency = Hash.new(0)
...
...
file.read.downcase.scan(/\b[a-z]{4,20}\b/){|word| frequency[word] =
frequency[word]+1}
Run Code Online (Sandbox Code Playgroud)
我无法理解的一点是 frequency[word] = frequency[word]+1
不会frequency[word]给我这个词匹配吗?我们怎样才能添加它1?
frequency被定义为具有0默认值的哈希.因此,当它返回0之前未被记录时frequency[word]被调用word.
代码似乎计算了文本中的不同单词.
当它完成时,frequency将包含单词作为键和特定单词在句子中作为值出现的次数.
你可以在这里玩它:http://rubyfiddle.com/riddles/519da
| 归档时间: |
|
| 查看次数: |
47 次 |
| 最近记录: |