1

因此,我正在使用 Nokogiri 解析页面并存储如下值:

contents[link[:href]] = content_page.css("p a")
copy = content_page.xpath('//p/text()[1]').text

然后我像这样将它们推到我的my_listing阵列上:

my_listing << contents[link[:href]]
my_listing << copy

但是,这样做是为每个条目创建一个 2 元素数组。

所以contents[link[:href]]存储在 中my_listing[0],而 copy存储在 中my_listing[1]

然而,我想要发生的是my_listing[0][0] == contents[link[:href]]&& my_listing[0][1] == copy

我该怎么做呢?

4

2 回答 2

5

我建议你做一个单行:

my_listing << [ contents[link[:href]], copy ]
于 2012-05-10T18:37:29.223 回答
0

我猜contents是哈希?

Hash#to_a如果是这样,您可以通过简单地使用该方法来制作您想要的数组。

{'a' => 123, 'b' => 456}.to_a
#=> [["a", 123], ["b", 456]]

contents = {}
contents['http://google.com'] = 'Its a google!'
contents['http://yeahoo.com'] = 'Like yahoo, but with some yeah!'

my_listing = contents.to_a

puts my_listing[0][0] #=> http://google.com
puts my_listing[0][1] #=> Its a google!
于 2012-05-10T18:36:47.057 回答