输入:
array = ['A', 'B', 'C']
期望的输出:
'A', 'B', 'C'
我正在使用legato gem链接谷歌分析过滤器。我的方法调用如下所示:
response = KeywordRevenueData.results(profile, self.options).for_keywords(array)
我认为这样可行,
array.map(&:inspect).join(", ")
但由于某种原因,它没有。
修改 当我将文字字符串放在方法调用中时,它工作正常:
response = KeywordRevenueData.results(profile, self.options).for_keywords("A", "B", "C")
单引号或双引号似乎在方法调用
中是文字时工作正常答案 0 :(得分:1)
您可以使用:
array.map{|l| "'" + l + "'"}.join(", ")
如果你需要强制存在周围的引号
这个答案也有一些有趣的建议:
答案 1 :(得分:1)
使用*将数组元素作为参数传递:
response = KeywordRevenueData.results(profile, self.options).for_keywords(*array) # Note the *