【发布时间】:2019-06-10 14:46:24
【问题描述】:
我希望能够通过输入特定列的值来仅打印文件的一行。我对 Ruby 很陌生,我只是从基础开始,我找到的关于 CSV 类的指南对我来说还不够清楚。基本上,我可以打印出整个 CSV,但不仅仅是其中的一行。
例如:
Column A,Column B
Pizza,Pie
Papa,John
假设我有这个 CSV,我想创建一个代码,通过一个特定的列(例如 B)搜索用户输入(gets.chomp?)。所以,如果我写“Pie”,它应该打印 Pizza, Pie。或者更好的是,让我访问该特定数组(行的数组)中的项目并将它们存储为变量,我可以按照我想要的任何顺序打印出来。
由于我缺乏专业知识,我只能打印整个数组(所有行、所有列),但肯定你们中的一个人必须知道如何做我正在尝试的事情,或者至少让它更清楚比我在网上能找到的信息。
这是我设法在网上找到的非常基本的代码,但我还无法超越它。
CSV.foreach('file.csv') do |row|
puts row.inspect
end
【问题讨论】: