如果我在1.8.7控制台中运行它:
$ irb-ruby-1.8.7-p330
1.8.7 :001 > "0a" =~ /\h\h/
=> nil
如果我在1.9.2控制台中运行相同的内容:
$ irb-ruby-1.9.2-p290
1.9.2p290 :001 > "0a" =~ /\h\h/
=> 0
:/
答案 0 :(得分:1)
你是对的,\h
似乎没有被标准的Ruby 1.8.7 regexp库识别。这可以使用Rubular确认。如果您在代码中需要1.8兼容性而不使用任何其他宝石,我认为您唯一的选择是使用等效的字符类[0-9a-fA-F]
。