我正在尝试打开一个 CSV 文件,查找一个字符串,然后返回 csv 文件的第二列,但只返回它的第一个实例。我已经做到了以下几点,但不幸的是,它返回了每个实例。我有点不知所措。
Ruby之神能帮忙吗?提前非常感谢。
米
就本示例而言,假设 names.csv 是一个包含以下内容的文件:
foo, happy
foo, sad
bar, tired
foo, hungry
foo, bad
#!/usr/local/bin/ruby -w
require 'rubygems'
require 'fastercsv'
require 'pp'
FasterCSV.open('newfile.csv', 'w') do |output|
FasterCSV.foreach('names.csv') do |lookup|
index_PL = lookup.index('foo')
if index_PL
output << lookup[2]
end
end
end
好的,所以,如果我想返回 foo 的所有实例,但是在 csv 中,那么它是如何工作的?所以我想要的结果是快乐、悲伤、饥饿、糟糕。我以为会是:
FasterCSV.open('newfile.csv', 'w') do |output|
FasterCSV.foreach('names.csv') do |lookup|
index_PL = lookup.index('foo')
if index_PL
build_str << "," << lookup[2]
end
output << build_str
end
end
但它似乎不起作用