-1

入力:

 array = ['A', 'B', 'C']

望ましい出力:

'A', 'B', 'C'

私は、legato gem を使用して Google アナリティクス フィルターをチェーンしています。私のメソッド呼び出しは次のようになります。

response = KeywordRevenueData.results(profile, self.options).for_keywords(array)

これならいけると思ったのですが、

array.map(&:inspect).join(", ")

しかし、何らかの理由でそうではありません。

EDIT: メソッド呼び出しにリテラル文字列を入れるとうまくいきます:

response = KeywordRevenueData.results(profile, self.options).for_keywords("A", "B", "C")

メソッド呼び出しでリテラルである場合、一重引用符または二重引用符は正常に機能するようです

4

2 に答える 2

1

* を使用して、配列要素を引数として渡します。

response = KeywordRevenueData.results(profile, self.options).for_keywords(*array)  # Note the *
于 2013-05-30T00:00:40.380 に答える
1

使用できます:

array.map{|l| "'" + l + "'"}.join(", ")

周囲の引用符の存在を強制する必要がある場合

この回答には興味深い提案もあります:

于 2013-05-29T23:43:43.520 に答える