当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Row.delete用法及代码示例


本文简要介绍ruby语言中 CSV::Row.delete 的用法。

用法

delete(index) → [header, value] or nil
delete(header) → [header, value] or empty_array
delete(header, offset) → [header, value] or empty_array

self 中删除指定的字段;如果字段存在,则返回 2 元素数组 [header, value]

如果给出整数参数 index,则删除并返回偏移量 index 处的字段,如果字段不存在则返回 nil

source = "Name,Name,Name\nFoo,Bar,Baz\n"
table = CSV.parse(source, headers: true)
row = table[0]
row.delete(1) # => ["Name", "Bar"]
row.delete(50) # => nil

否则,如果给定单个参数 header,则删除并返回带有给定标头的 first-found 字段,如果该字段不存在,则返回一个新的空数组:

source = "Name,Name,Name\nFoo,Bar,Baz\n"
table = CSV.parse(source, headers: true)
row = table[0]
row.delete('Name') # => ["Name", "Foo"]
row.delete('NAME') # => []

如果给定参数 header 和整数参数 offset,则删除并返回具有给定标头的 first-found 字段,其 index 至少与 offset 一样大:

source = "Name,Name,Name\nFoo,Bar,Baz\n"
table = CSV.parse(source, headers: true)
row = table[0]
row.delete('Name', 1) # => ["Name", "Bar"]
row.delete('NAME', 1) # => []

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Row.delete。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。