in reply to Breaking up a string?

Given that the OP mentions the substr, chop and reverse methodology I'm wondering if the requirement is to produce an array of arrays of six numbers. Perhaps this is what's required.

use strict; use warnings; use Data::Dumper; my $string = join q{}, map { int rand 10 } 1 .. 24; my @AoAofSixes = map { [ split m{} ] } $string =~ m{.{6}}g; print Data::Dumper->Dumpxs( [ \ @AoAofSixes ], [ q{*AoAofSixes} ] );

The output.

@AoAofSixes = ( [ '1', '9', '6', '8', '4', '7' ], [ '1', '5', '1', '9', '8', '5' ], [ '9', '6', '6', '0', '1', '1' ], [ '3', '8', '3', '2', '5', '8' ] );

It's possible I'm barking up the wrong tree but it would explain the why of the "really ugly and inefficient" code.

Cheers,

JohnGG

Update: Fixed typo