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


Ruby String.rpartition用法及代码示例


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

用法

rpartition(sep) → [head, sep, tail]
rpartition(regexp) → [head, match, tail]

从字符串末尾开始搜索字符串中的sep 或模式(regexp),并返回它之前的部分、匹配项和它之后的部分。如果未找到,则返回两个空字符串和 str

"hello".rpartition("l")         #=> ["hel", "l", "o"]
"hello".rpartition("x")         #=> ["", "", "hello"]
"hello".rpartition(/.l/)        #=> ["he", "ll", "o"]

从最后开始的匹配意味着从可能的最后一个位置开始,而不是最长匹配中的最后一个。

"hello".rpartition(/l+/)        #=> ["hel", "l", "o"]

要在最后一个最长的匹配处进行分区,需要结合否定的lookbehind。

"hello".rpartition(/(?<!l)l+/)  #=> ["he", "ll", "o"]

String#partition 带有负前瞻。

"hello".partition(/l+(?!.*l)/)  #=> ["he", "ll", "o"]

相关用法


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