NameError:未定义的局部变量或扫描方法的方法

时间:2016-05-03 02:53:26

标签: ruby-on-rails ruby

我使用scan

regex方法上收到此错误
#<NameError: undefined local variable or method ` ' for #<MacShop:0x007faa2b059998>>

当我调用rake任务进行解析时,它会给我错误。

但是,当我尝试重播该错误时,它会在pry / rails控制台中消失。

只有当我执行rake任务时才会发生错误,我怎么能摆脱它呢?

例外情况发生在第59行

        57: def get_modifier(line)
        58:   begin
        59:     matchers = line.scan(/(\[.*?\])/).first[0].split("/")
        60:   rescue Exception => e
        61:     ap(e)
        62:     binding.pry
     => 63:     matchers = [""]
        64:   end
        65:   matchers
        66: end

    [1] pry(#<MacShop>)> e
    => #<NameError: undefined local variable or method ` ' for #<MacShop:0x007faa2b059998>>
    [3] pry(#<MacShop>)> play -l 59
    => ["[賣", "台南]"]

的Gemfile

gem "hirb-unicode"
gem "bond"

2 个答案:

答案 0 :(得分:1)

您可以使用&#34; //&#34;而不是&#34; /&#34;

&#34; /&#34;意思是&#39; &#34; 但是&#34; //&#34;意思是&#34; /&#34;

答案 1 :(得分:0)

通过删除begin rescue Exception => e块删除了异常, 但还是不知道原因。 我的ruby版本是2.2.2