splice
Removes and/or replaces elements in an array, returning the removed elements.
Removes $length elements starting at $offset from @array,
optionally replacing them with @replacements, and returns the
removed elements. Negative $offset counts from the end of the
array. If $length is omitted, removes everything from $offset
onward. A negative $length leaves that many elements at the end.
Replacement arrays are flattened. The array is rebuilt in place.
Synopsis
my @removed = splice @array, $offset;
my @removed = splice @array, $offset, $length;
my @removed = splice @array, $offset, $length, @replacements;
splice @array, 0, 0, @prepend; # insert at beginning
Implementation Notes
perl5 (
pp.c:6107): Removes/replaces elements from an array. Stack: [mark] array offset? length? replacement_list… Returns removed elements (list ctx) or last removed (scalar ctx).