Ruby - 未定义的局部变量或方法“_1”
Ruby - undefined local variable or method `_1'
当我 运行 以下代码时出现错误 undefined local variable or method '_1' for main:Object
。知道为什么我会收到此错误吗?以及如何将结果存储在变量中。
result="-e hostname=webserver001 -e username=root -e password=testing123"
p result.scan(/\w+=\w+/)
.map { _1.split("=") }
.to_h
Error:
Traceback (most recent call last):
2: from main.rb:4:in `<main>'
1: from main.rb:4:in `map'
main.rb:4:in `block in <main>': undefined local variable or method `_1' for main:Object (NameError)
exit status 1
您可能 运行 是 ruby 的旧版本 - 自 2.7 以来,块的编号参数在 ruby 中可用 - 请参阅 https://www.bigbinary.com/blog/ruby-2-7-introduces-numbered-parameters-as-default-block-parameters
您可以使用
使其在旧版本上运行
p result.scan(/\w+=\w+/)
.map { |s| s.split("=") }
.to_h
当我 运行 以下代码时出现错误 undefined local variable or method '_1' for main:Object
。知道为什么我会收到此错误吗?以及如何将结果存储在变量中。
result="-e hostname=webserver001 -e username=root -e password=testing123"
p result.scan(/\w+=\w+/)
.map { _1.split("=") }
.to_h
Error:
Traceback (most recent call last):
2: from main.rb:4:in `<main>'
1: from main.rb:4:in `map'
main.rb:4:in `block in <main>': undefined local variable or method `_1' for main:Object (NameError)
exit status 1
您可能 运行 是 ruby 的旧版本 - 自 2.7 以来,块的编号参数在 ruby 中可用 - 请参阅 https://www.bigbinary.com/blog/ruby-2-7-introduces-numbered-parameters-as-default-block-parameters
您可以使用
使其在旧版本上运行p result.scan(/\w+=\w+/)
.map { |s| s.split("=") }
.to_h