是否有一个更像剁的红宝石切片?

时间:2016-05-09 19:44:26

标签: ruby

chop切断最后一个字符并返回剩余的字符串:

irb(main):011:0> "hello world".chop
=> "hello worl"

slice可用于切断第一个字符

irb(main):013:0> str = "hello world"
=> "hello world"
irb(main):014:0> str.slice!(0)
=> "h"
irb(main):015:0> str
=> "ello world"

是否有一个Ruby方法切断了第一个字符但后来又返回了字符串的其余部分?所以它看起来像

irb(main):011:0> "hello world".some_method
=> "ello world"

3 个答案:

答案 0 :(得分:5)

以下是几种方式:

> str = "hello world"
=> "hello world"
> str[1..-1]
=> "ello world"
> str = "hello world"
=> "hello world"
> str.slice(1..-1)
=> "ello world"

答案 1 :(得分:2)

这是一种有趣的方式:

> str = "hello world"
=> "hello world"
> str.reverse.chop.reverse
=> "ello world"

答案 2 :(得分:1)

另一种有趣(但具有破坏性)的方式:

"hello world".tap { |s| s.slice!(0) }
  #=> "ello world"