From: Yukihiro Matsumoto Date: 2009-05-19T16:20:07+09:00 Subject: [ruby-dev:38495] Re: [Feature:trunk] enhancement of Array#drop まつもと ゆきひろです In message "Re: [ruby-dev:38493] [Feature:trunk] enhancement of Array#drop" on Tue, 19 May 2009 15:58:46 +0900, "U.Nakamura" writes: |Rubyでスクリプトを書いていて、配列から、ある条件に合致する先 |頭の要素のみを削除する、という処理を書きたい場面に出会ったこ |とが何度かあります。 | |無条件で先頭の要素を削除するメソッドとしてはshiftまたはdrop(1) |があり、また、条件に合致した全ての要素を削除するメソッドとし |てはdeleteがありますが、ある条件に合致する先頭の要素のみを削 |除しようとすると、意外と複雑な記述になってしまいます。 | |... という話をIRCでしてみたところ、なかださんに「dropにブロッ |ク引数を追加するのはどうか」と言われました。 drop_whileとは違うのですね。 |私としてはこの仕様が実現されると大変便利と思うのですが、いか |がでしょうか。 drop_whileに先頭いくつまでという引数を追加するという考え方も ありますね。ただし、この場合は |さらに、第2引数が指定された場合は、{|e| e === 第2引数} とみな |すようにすればさらに便利、とも言われました。 が自然に実現できませんが。