現在、+=1 を使用してそれ自体に値を追加できるハッシュがあります
@hash = Hash.new { |hash, key| hash[key] = Hash.new(0) }
@hash[string1][string2] += 1
これは、次のようなハッシュを返します。
@hash = {string1 => {string2 => 1 }}
そして、その整数値は、同じ文字列値が繰り返されるたびに 1 ずつ増加します。
次に、ハッシュに別の値を追加する必要があるため、次のようになります...
@hash = {string1 => {string2 => {string3 => 1}}}
そして、その数を同じように増やします。
残念ながら、このコード:
@hash = Hash.new { |hash, key| hash[key] = Hash.new(0)}
@hash[string1][string2][string3] += 1
「文字列を整数に変換できません」というエラーを返します。追加された要素があり、Hash.new(0) があるためだと感じているので、文字列がある場所に整数が必要です。あれは正しいですか?
余分な次元を処理し、最後に += 1 を実行して値が増加するように、このハッシュをどのように設定すればよいでしょうか?
ありがとう。