【发布时间】:2011-07-15 17:28:21
【问题描述】:
我正在使用 ruby 1.9.2p136 (2010-12-25) [i386-mingw32] 尝试这个示例 myhash = {/(\d+)/ => "hello"}。
它没有按预期工作(编辑:事实证明它不应该按我的预期工作):
irb(main):004:0> myhash = {/(\d+)/ => "hello"}
=> {/(\d+)/=>"Hello"}
irb(main):005:0> myhash[2222]
=> nil
irb(main):006:0> myhash["2222"]
=> nil
【问题讨论】:
-
@gnab - 很好发现。但不幸的是,这不是问题
-
我认为您必须迭代哈希并进行正常匹配。它不会很快。
-
您要解决什么问题?使用正则表达式作为哈希的键值似乎有点奇怪。
-
@Jonas - 似乎我只是把一件简单的任务复杂化了。