### Re^3: Splitting multiline scalars into different array entries

by broquaint (Abbot)
 on Aug 05, 2005 at 11:23 UTC Need Help??

Ah yes, it seems I missed the transposition.
```use Algorithm::Loops 'MapCar';

my @results = map {
grep(/\n/,@\$_)
? MapCar {[@_]} map([split "\n"], @\$_)
: \$_
} @AoA;
And to be sure:
```use Test::More tests => 1;

my @AoA = (
[qw/single cell values/],
[qw/are really easy/],
[ "but\nmultiline\nstilton",
"these\ncells\nis",
"aren't\nsuck\ngreat" ],
[qw/back to life/],
[qw/back to reality with more cells/]
);

my \$desired = [
[ 'single',    'cell',   'values' ],
[ 'are',       'really', 'easy' ],
[ 'but',       'these',  'aren\'t' ],
[ 'multiline', 'cells',  'suck' ],
[ 'stilton',   'is',     'great' ],
[ 'back',      'to',     'life' ],
[ 'back', 'to', 'reality', 'with', 'more', 'cells' ]
];

use Algorithm::Loops 'MapCar';
my @results = map {
grep(/\n/,@\$_)
? MapCar {[@_]} map([split "\n"], @\$_)
: \$_
} @AoA;

is_deeply \@results, \$desired, "The arrays match!";
HTH

_________
broquaint

Replies are listed 'Best First'.
Re^4: Splitting multiline scalars into different array entries
by davis (Vicar) on Aug 05, 2005 at 11:29 UTC
broquaint: Thank you very much. I had just seen frodo's link, and was struggling with MapCar myself. That's exactly what I was after.

davis
Kids, you tried your hardest, and you failed miserably. The lesson is: Never try.
Re^4: Splitting multiline scalars into different array entries
by Anonymous Monk on May 15, 2012 at 05:40 UTC
i wanna split a file which has 3 char and all 21 values in a single line ie each char has 7 values.so i need to split it as 7 in each line by input file.

Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://481198]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (2)
As of 2024-03-03 09:31 GMT
Voting Booth?
My favourite way to spend a leap day ...

Results (29 votes). Check out past polls.