我正在使用 ruby Dir 方法来获取目录中的所有文件名。像这样:
dir_files = Dir["/Users/AM/Desktop/07/week1/dailies/regionals/*.csv"]
这给了我一个包含下面列出的每个元素的数组:
/Users/AM/Desktop/07/week1/dailies/regionals/ch002.csv
/Users/AM/Desktop/07/week1/dailies/regionals/ch014.csv
/Users/AM/Desktop/07/week1/dailies/regionals/ch90.csv
/Users/AM/Desktop/07/week1/dailies/regionals/ch112.csv
/Users/AM/Desktop/07/week1/dailies/regionals/ch234.csv
我试图仅提取上述字符串中匹配的部分:“regionals/*.csv”
我如何在 Ruby 中做到这一点?
以下没有工作
@files_array.each do |f|
f = f.split("/").match(/*.csv/)
i = f.include?(".csv")
puts "#{i.inspect}"
#self.process_file(f[i])
end
这样做的聪明方法是什么?我打算将每个文件名的返回字符串传递给辅助方法进行处理。但正如您所见,所有 csv 文件与我的执行脚本位于不同的目录中。我执行此操作的脚本位于
/Users/AM/Desktop/07/week1/dailies/myScript.rb
谢谢