How to merge same sizes of arrays to one array in Perl? -
i have several arrays have same size below:
@m1= (1,1,0,1); @m2= (0,1,1,1); @m3= (0,1,1,0); @m4= (1,1,0,0);
the question how can put in 1 array this?
@m = ( [1,1,0,1], [0,1,1,1], [0,1,1,0], [1,1,0,0] );
edit: since want copy arrays (as per comment), this--
my @m = ( [ @m1 ], [ @m2 ], [ @m3 ], [ @m4 ] );
see perldoc perlref , perldoc perlreftut more information.
original answer:
if want flatten them 1 array:
my @m = ( @m1, @m2, @m3, @m4 );
if want array of arrayrefs:
my @m = ( \@m1, \@m2, \@m3, \@m4 );
example:
use data::dumper; @m1= (1,1,0,1); @m2= (0,1,1,1); @m3= (0,1,1,0); @m4= (1,1,0,0); @m = ( @m1, @m2, @m3, @m4 ); warn dumper( \@m ); @m_again = ( \@m1, \@m2, \@m3, \@m4 ); warn dumper( \@m_again );
output:
$var1 = [ 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0 ]; $var1 = [ [ 1, 1, 0, 1 ], [ 0, 1, 1, 1 ], [ 0, 1, 1, 0 ], [ 1, 1, 0, 0 ] ];
Comments
Post a Comment