Ruby意外关键字结束

时间:2015-07-19 09:55:04

标签: ruby

我有代码:

onsubmit="window.open(document.getElementsByName('option')[1].value);"

当我运行程序时,它给了我一个错误:

results = ["http://www.google.com", "http://www.yahoo.com.uk"]

results.each do |results| 
  File.open("#{results}.html", "w") do |file|
    file.write(RestClient.get(#{result}))
  end
end

我有两个syntax error, unexpected keyword_end, expecting ')' - s和两个do - s。请帮忙。

1 个答案:

答案 0 :(得分:6)

#用于字符串插值,但仅限于适当的string literal

File.open("#{results}.html", "w")
#          ^^^^^^^^^^
#          string interpolation

在字符串之外,#会启动comment

file.write(RestClient.get(#{result}))
#                         ^^^^^^^^^^^
#                         comment

您的编辑应该能够相应地突出显示它:

vim screenshot

To" fix"它,使用:

file.write(RestClient.get(result))
顺便说一句,你的代码中还有另一个拼写错误:

results.each do |results|

应该是:

results.each do |result|

result然后引用results数组中的单个元素(仔细检查resultresults的代码。)