本文简要介绍ruby语言中 String.next
的用法。
用法
next()
别名:succ
返回 self
的后继者。后继是通过递增字符来计算的。
要递增的第一个字符是最右边的字母数字:或者,如果没有字母数字,则最右边的字符:
'THX1138'.succ # => "THX1139"
'<<koala>>'.succ # => "<<koalb>>"
'***'.succ # => '**+'
一个数字的后继是另一个数字,“carrying” 到 next-left 字符用于从 9 到 0 的 “rollover”,并在必要时添加另一个数字:
'00'.succ # => "01"
'09'.succ # => "10"
'99'.succ # => "100"
字母的后继是相同大小写的另一个字母,携带到 next-left 字符以进行翻转,并在必要时附加另一个 same-case 字母:
'aa'.succ # => "ab"
'az'.succ # => "ba"
'zz'.succ # => "aaa"
'AA'.succ # => "AB"
'AZ'.succ # => "BA"
'ZZ'.succ # => "AAA"
非字母数字字符的后继字符是基础字符集整理序列中的下一个字符,携带到next-left 字符以进行翻转,并在必要时附加另一个字符:
s = 0.chr * 3
s # => "\x00\x00\x00"
s.succ # => "\x00\x00\x01"
s = 255.chr * 3
s # => "\xFF\xFF\xFF"
s.succ # => "\x01\x00\x00\x00"
携带可能发生在字母数字字符的混合之间和之中:
s = 'zz99zz99'
s.succ # => "aaa00aa00"
s = '99zz99zz'
s.succ # => "100aa00aa"
空字符串的后继是一个新的空字符串:
''.succ # => ""
String#next
是 String#succ
的别名。
相关用法
- Ruby String.new用法及代码示例
- Ruby String.match?用法及代码示例
- Ruby String.unpack用法及代码示例
- Ruby String.scan用法及代码示例
- Ruby String.dump用法及代码示例
- Ruby String.oct用法及代码示例
- Ruby String.size用法及代码示例
- Ruby String.scrub用法及代码示例
- Ruby String.to_sym用法及代码示例
- Ruby String.chop用法及代码示例
- Ruby String.bytesize用法及代码示例
- Ruby String.count用法及代码示例
- Ruby String.string <=>用法及代码示例
- Ruby String.ascii_only?用法及代码示例
- Ruby String.downcase用法及代码示例
- Ruby String.capitalize用法及代码示例
- Ruby String.length用法及代码示例
- Ruby String.lines用法及代码示例
- Ruby String.unicode_normalize用法及代码示例
- Ruby String.center用法及代码示例
- Ruby String.casecmp用法及代码示例
- Ruby String.index用法及代码示例
- Ruby String.each_line用法及代码示例
- Ruby String.capitalize!用法及代码示例
- Ruby String.swapcase用法及代码示例
注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 String.next。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。