GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Array::Group(3) User Contributed Perl Documentation Array::Group(3)

Array::Group - Convert an array into array of arrayrefs of uniform size N.

  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   ]
          );

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.

Array::Reform

Currently maintained by Mike Accardo, <accardo@cpan.org>

Original author Terrence Monroe Brannon.

I would like to thank Alexandr Ciornii for his help in upgrading this distribution's format. He took me from using a test.pl file to using the t/ directory and removed some old crufty things that were not needed. He also upgraded the Makefile.PL.

    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.

2022-04-07 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.