2012-01-28 11 views
0

私はRubyの新機能です。Twitterを検索し、特定の文字列をURLで取得し、その文字列を切り捨て、URLを空の配列に配置する単純な関数を構築しようとしています。URL配列を文字列に変換して空の配列に配置するにはどうすればよいですか?

この関数の最終目標は、別の関数で操作できる2つのURLを持つ配列を返すことです。

私はこれをしばらく見据えていましたが、URI :: extractが文字列に吐き出して配列に配置する方法を完全にはわかりません。

ご協力いただきありがとうございます。ありがとうございました!

require 'rubygems' 
require 'twitter' 
require 'json' 
require 'uri' 
require 'mechanize' 

def grabTweets() 
    urls = [] 

    tweets = Twitter.search("[pic] "+" path.com/p/", :rpp => 2, :result_type => "recent").map do |status| 
    tweets = "#{status.text}" #class = string 

    url = URI::extract(tweets) #class = array 
    print url 

    #turn each array into a string 

    #place string in array 

    #what do I return? 

    end 
end 


timelineTweets = grabTweets() 
+0

'URI :: extract'に与えられたデータを提供した方が、すべての宝石をインストールする必要はありません。なぜなら、' extract'の出力以外は何も関係がないからです。あなたが求めているものも確かではありません。なぜなら、すでに*文字列の配列を返すからです。 –

+0

Twitterの検索は "[pic]" + "path.com/p/"です。これは、最も最近の2つのつぶやきを、最初のURLがpath.com/p/ –

+0

であることを探しています。 'extract'に提供されるデータは変数' tweets'にあります。 *変数がどのように初期化されているかは無関係です。重要なのはその中にあるものです。 –

答えて

1

URI :: extractはURL文字列の配列を返します。出力を目的の配列に配置するだけです。

urls.concat(URI::extract(tweets)) 
0

print url 

を取り除く(またはラインurlを追加):
あなたは次のようにそれを行うことができます。メソッドは最後のステートメントの結果を返します。 printnilを返すので、あなたのメソッドgrabTweets(もっと慣用的:grab_tweets)もそうです。

関連する問題