2011-01-26 40 views
0

好吧添加前置文本,這裏是我的代碼:
(@wsource是進入網站的源代碼)創建掃描進入陣列和紅寶石

@barray = @wsource.scan(/(xxxx:|[\/|.|\w|\s]*\.(?:jp?g|gif|png))/i) 
puts @barray.collect! {|x| "http:" + x} 

首先,@wsource掃描圖像的URL 。然後,他們在沒有前面的HTTP返回:(其中應該有)試圖做線上的兩個回報

C:/Users/myself/workspace/Test/ripper.rb:51:in `+': can't convert String into Array (TypeError) 

雖然紅寶石文檔說.scan返回數組,這似乎是在這裏返回一個字符串。任何幫助,無論是與正則表達式或添加http:讚賞!

回答

1

"http:" + x,x是一個捕獲數組。試試這個:"http:" + x.first

+0

工作完美!謝謝一個男人。 – user451711 2011-01-26 19:31:44