如何在ruby中抑制字符串插值问题



我有以下代码:

address = "#{(article/"div.address").inner_html.strip_html.squish}"

(使用Hpricot)

在某些情况下…

address = "#{(article/"div.address").inner_html.strip_html.squish}"

nil

我希望脚本继续运行,可能用空字符串替换nil。

提示吗?

编辑

我已经找到了更好的问题:

puts "#{link[0].to_s}n" unless link.empty?

(。回溯指向源代码中的这一行。)

所以修改后的问题是:为什么那一行没有被解析?为什么会抛出错误?我认为使用unless将跳过它…

使用:to_s方法:

nil.to_s == ''

您正在寻找的是try吗?http://api.rubyonrails.org/classes/Object.html method-i-try

感谢大家的支持和帮助,最后这是一个使用正确方法的问题,我最终解决了我的问题,使用:

unless uri.query.nil?

但是我确实在我的源代码中使用了.to_stry,我希望我能选择两个答案作为正确的答案!

最新更新