Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Array#values_atを使うと複雑な条件で抽出できる

実際のところ

0番目、2〜6番目を抽出するような場合を考えます。

ary = (:a..:z).to_a

 ((buf = []) << ary[0] << ary[2..6]).flatten
#=>  [:a, :c, :d, :e, :f, :g]
ary = (:a..:z).to_a
(:a..:z).to_a.values_at(0, 2..6)

#=> [:a, :c, :d, :e, :f, :g]