gpt4 book ai didi

ruby - 元素到达时切片数组

转载 作者:数据小太阳 更新时间:2023-10-29 07:41:20 24 4
gpt4 key购买 nike

假设我有一个这样的数组:['x','cat', 'dog', 'x', 'dolphin', 'cougar', 'whale']

我不知道数组的长度或何时会出现“x”。当我到达 'x' 时,我想将以下元素插入一个新数组,直到到达下一个 includes?('x') 的元素。

期望的输出是:[['猫'、'狗']['海豚'、'美洲狮'、'鲸鱼']]

我怎样才能做到这一点?

最佳答案

Enumerable#slice_before使这变得简单:

a = ['x','cat', 'dog', 'x', 'dolphin', 'cougar', 'whale']
a.slice_before(/\Ax\z/).map { |chunk| chunk.drop(1) }
=> [["cat", "dog"], ["dolphin", "cougar", "whale"]]

关于ruby - 元素到达时切片数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16472268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com