當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Ruby Row.fetch用法及代碼示例

本文簡要介紹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

給定參數 headerdefault 時,如果標頭存在,則返回標頭的字段值(首先找到),否則返回 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-lang.org大神的英文原創作品 Row.fetch。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。