我知道split是一个有用的工具,我知道有办法做到这一点。我尝试了一些不同的方法,但无法通过谷歌解决。任何人都可以帮助我。
example1 = "test1,test2,test3,test4,test5"
example2 = "test1,test2,test3,test4,test5,test6,test7"
所以我需要结果看起来像这样
example1 = test3,test4,test5
example2 = test5,test6,test7
我也想保留逗号。
答案 0 :(得分:4)
example = "test1,test2,test3,test4,test5"
example.split(',')[-3..-1] # => [test3,test4,test5]
Split为您提供了一个数组。您可以使用范围来选择数组的子集。负数从数组的末尾开始计数,因此[-3..-1]
选择最后一个元素的倒数第三个。
答案 1 :(得分:3)
这基本上只是逗号上的split
和join
。数组中的负索引很容易让你获得最后的元素。所以我认为你想要str.split(',')[-3..-1].join(',')
。
答案 2 :(得分:3)
您也可以使用last(3)
代替[-3..-1]
,如下所示:
example = "test1,test2,test3,test4,test5"
example.split(',').last(3).join(',') # => "test3,test4,test5"