Perl5 リファレンス



splice

【文法】

splice 配列,オフセット,要素数,リスト
splice 配列,オフセット,要素数
splice 配列,オフセット
splice 配列


【説明】

"オフセット"と"要素数"で指定された要素を"配列"から取り除き、"リスト"が指定されて
いれば、その要素に置き換えます。そして配列から取り除かれた要素を返します。スカラ
ーコンテキストでは、取り除かれた最後の要素を返します。配列は、必要に応じて大きく
もなり、小さくもなります。("要素数"と"リスト"のサイズによる)
もし、"オフセット"が負の値の場合、配列の最後の要素からの位置を意味します。"要素
数"が省略された場合、"オフセット"の位置から後ろの要素はすべて取り除かれます。"オ
フセット"と"要素数"ともに省略された場合には、すべての要素が取り除かれます。


【使用例】

@Array = ('A', 'B', 'C', 'D', 'E', 'F');
@RemovedList = splice @Array, 2, 3, 'G', 'H';
print "RemovedList : @RemovedList\n";
print "Array       : @Array\n";
--------------------------------------------------
RemovedList : C D E
Array       : A B G H F
--------------------------------------------------


# オフセットが負の値の場合
@Array = ('A', 'B', 'C', 'D', 'E', 'F');
@RemovedList = splice @Array, -2, 3, 'G', 'H';
print "RemovedList : @RemovedList\n";
print "Array       : @Array\n";
--------------------------------------------------
RemovedList : E F
Array       : A B C D G H
--------------------------------------------------


# 要素数が省略された場合
@Array = ('A', 'B', 'C', 'D', 'E', 'F');
@RemovedList = splice @Array, 2;
print "RemovedList : @RemovedList\n";
print "Array       : @Array\n";
--------------------------------------------------
RemovedList : C D E F
Array       : A B
--------------------------------------------------


# オフセット、要素数ともに省略された場合
@Array = ('A', 'B', 'C', 'D', 'E', 'F');
@RemovedList = splice @Array;
print "RemovedList : @RemovedList\n";
print "Array       : @Array\n";
--------------------------------------------------
RemovedList : A B C D E F
Array       :
--------------------------------------------------




Perl5リファレンスに戻る