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


Ruby String.byteslice用法及代码示例


本文简要介绍ruby语言中 String.byteslice 的用法。

用法

byteslice(index, length = 1) → string or nil
byteslice(range) → string or nil

返回 self 的子字符串,如果无法构造子字符串,则返回 nil

给定整数参数 indexlength,返回从给定 length 的给定 index 开始的子字符串(如果可能),如果 length 为负数或 index 超出范围,则返回 nil self

s = '0123456789' # => "0123456789"
s.byteslice(2)   # => "2"
s.byteslice(200) # => nil
s.byteslice(4, 3)  # => "456"
s.byteslice(4, 30) # => "456789"
s.byteslice(4, -1) # => nil
s.byteslice(40, 2) # => nil

在上述任何一种情况下,如果 index 为负数,则从 self 的末尾倒数:

s = '0123456789'   # => "0123456789"
s.byteslice(-4)    # => "6"
s.byteslice(-4, 3) # => "678"

给定 Range 参数 range,返回 byteslice(range.begin, range.size)

s = '0123456789'    # => "0123456789"
s.byteslice(4..6)   # => "456"
s.byteslice(-6..-4) # => "456"
s.byteslice(5..2)   # => "" # range.size is zero.
s.byteslice(40..42) # => nil

在所有情况下,返回的字符串都具有与 self 相同的编码:

s.encoding              # => #<Encoding:UTF-8>
s.byteslice(4).encoding # => #<Encoding:UTF-8>

相关用法


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