我有来自我的服务器的这个数组。当我使用 put 时返回如下:
formatted_total_price
£66.00
formatted_total_price
£128.00
formatted_total_price
£246.00
formatted_total_price
£243.20
formatted_total_price
£242.86
formatted_total_price
£242.50
所以我只是尝试这样做:
price1.each do |price11|
price11.json {render json: price11.as_json}
end
但是这会返回此错误:
NoMethodError (undefined method `json' for ["formatted_total_price", "£66.00"]:Array):
我想要的是拥有formatted_total_price
和£66.00
匹配如下:
"formatted_total_price":"£66.00"
这是我的实际代码:
doc.xpath("//script[@type='text/javascript']/text()").each do |text|
if text.content =~ /more_options_on_polling/
price1 = text.to_s.scan(/\"(formatted_total_price)\":\"(.+?)\"/).uniq
description = text.to_s.scan(/\"(ticket_desc)\":\"(.+?)\"/).uniq
price = price1 + description
price1.each do |price11|
price11.json {render json: price11.as_json}
end
end
Edit好吧,这就是我所拥有的:
formatted_total_price
£66.00
formatted_total_price
£128.00
formatted_total_price
£246.00
formatted_total_price
£243.20
formatted_total_price
£242.86
formatted_total_price
£242.50
ticket_desc
Later Owl Ticket
ticket_desc
Later Owl Ticket+Collector Ticket @ extra £4.95 per ticket
ticket_desc
Later Owl + Chance For VIP Upgrade
ticket_desc
VIP Ticket
ticket_desc
VIP Ticket + Collector Ticket @ extra £4.95 per ticket
ticket_desc
Skydeck Package
ticket_desc
5 Person Skydeck Table
ticket_desc
7 Person Skydeck Table
ticket_desc
10 Person Skydeck Table
我想要的和上次的有点一样,但更像是这样的:
"formatted_total_price" : "£66.00",
"ticket_desc" : "Later Owl Ticket"
另外,如果 Ticket_desc 有任何包含+
我希望忽略它的符号(我自己可以做到这一点,除非你知道更好的方法!!)