本文簡要介紹ruby語言中 CSV::Row.fetch
的用法。
用法
fetch(header)
fetch(header, default)
fetch(header) {|row| ... }
返回由 header
指定的字段值。
使用單個參數 header
,返回該標頭的字段值(首先找到):
source = "Name,Name,Name\nFoo,Bar,Baz\n"
table = CSV.parse(source, headers: true)
row = table[0]
row.fetch('Name') # => "Foo"
如果標頭不存在,則引發異常 KeyError
。
給定參數 header
和 default
時,如果標頭存在,則返回標頭的字段值(首先找到),否則返回 default
:
source = "Name,Name,Name\nFoo,Bar,Baz\n"
table = CSV.parse(source, headers: true)
row = table[0]
row.fetch('Name', '') # => "Foo"
row.fetch(:nosuch, '') # => ""
使用參數header
和給定的塊,如果標頭存在,則返回標頭的字段值(第一次找到);否則調用該塊並返回其返回值:
source = "Name,Name,Name\nFoo,Bar,Baz\n"
table = CSV.parse(source, headers: true)
row = table[0]
row.fetch('Name') {|header| fail 'Cannot happen' } # => "Foo"
row.fetch(:nosuch) {|header| "Header '#{header} not found'" } # => "Header 'nosuch not found'"
相關用法
- Ruby Row.fields用法及代碼示例
- Ruby Row.field用法及代碼示例
- Ruby Row.delete用法及代碼示例
- Ruby Row.to_csv用法及代碼示例
- Ruby Row.row << [header, value]用法及代碼示例
- Ruby Row.dig用法及代碼示例
- Ruby Row.inspect用法及代碼示例
- Ruby Row.to_h用法及代碼示例
- Ruby Row.delete_if用法及代碼示例
- Ruby Row.push用法及代碼示例
- Ruby Row.row[index] =用法及代碼示例
- Ruby Row.headers用法及代碼示例
- Ruby Range.end用法及代碼示例
- Ruby Regexp named_captures()用法及代碼示例
- Ruby Ractor.receive_if用法及代碼示例
- Ruby Range new()用法及代碼示例
- Ruby Rational.inspect用法及代碼示例
- Ruby Random.bytes用法及代碼示例
- Ruby Random hex()用法及代碼示例
- Ruby RFC2396_Parser.parse用法及代碼示例
- Ruby Range.size用法及代碼示例
- Ruby Rational.rational <=>用法及代碼示例
- Ruby Recorder類用法及代碼示例
- Ruby Ruby.parse_method_parameters用法及代碼示例
- Ruby RFC2396_Parser.new用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Row.fetch。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。