Array::Group - Convert an array into array of arrayrefs of uniform size N.
Contents
Copyright
Copyright (c) 2015 Mike Accardo
Copyright (c) 1999-2014 Terrence Brannon
This library is free software; you can redistribute it and/or modify it under the same terms as Perl
itself.
perl v5.36.0 2022-10-13 Array::Group(3pm)
Description
The "ngroup" method reformats a list into a list of arrayrefs. It is often used for formatting data into
HTML tables, amongst other things.
"dissect()" returns a list of lists where the first element of each sublist will be one of the first
elements of the source list, and the last element will be one of the last. This behaviour is much more
useful when the input list is sorted.
The key difference between the two methods is that "dissect()" takes elements from the start of the list
provided and pushes them onto each of the subarrays sequentially, rather than simply dividing the list
into discrete chunks.
Both methods can be called as either functions or class methods (to ensure compatibility with previous
releases), and the array to be reformed can be passed as a reference.
Name
Array::Group - Convert an array into array of arrayrefs of uniform size N.
See Also
• Array::Reform
Synopsis
use Array::Group qw( :all );
@sample = ( 1 .. 10 );
$rowsize = 3;
ngroup $rowsize => \@sample ;
# yields
(
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ],
[ 10 ]
);
dissect $rowsize => \@sample ;
# yields
(
[ 1, 5, 9 ],
[ 2, 6, 10 ],
[ 3, 7 ],
[ 4, 8 ]
);
