Some extra juggling is done to clean output. This is what it looks like.#!/usr/local/bin/perl -w use strict; use Data::Dumper; my @records; { local $/ = '>'; # record separator. while ( <DATA> ) { push( @{$records[$1]}, split(/(?:\n+|>)/) ) if ( s/DATA SET ([0-9]+)\n+// ); } } print Dumper( \@records ); __DATA__ >DATA SET 1 1aHSAJDHSDHSADHDSALHDASLDHSALDH 1bHGDKJSHDSADHSALDHLHLDHASDLSAH 1cHKJAHCADHALIDHALSDHLSADHALHDA >DATA SET 2 2aHSAJDHSDHSADHDSALHDASLDHSALDH 2bHGDKJSHDSADHSALDHLHLDHASDLSAH 2cHKJAHCADHALIDHALSDHLSADHALHDA >DATA SET 3 3aHSAJDHSDHSADHDSALHDASLDHSALDH 3bHGDKJSHDSADHSALDHLHLDHASDLSAH 3cHKJAHCADHALIDHALSDHLSADHALHDA
:!./test.pl $VAR1 = [ undef, [ '1aHSAJDHSDHSADHDSALHDASLDHSALDH', '1bHGDKJSHDSADHSALDHLHLDHASDLSAH', '1cHKJAHCADHALIDHALSDHLSADHALHDA' ], [ '2aHSAJDHSDHSADHDSALHDASLDHSALDH', '2bHGDKJSHDSADHSALDHLHLDHASDLSAH', '2cHKJAHCADHALIDHALSDHLSADHALHDA' ], [ '3aHSAJDHSDHSADHDSALHDASLDHSALDH', '3bHGDKJSHDSADHSALDHLHLDHASDLSAH', '3cHKJAHCADHALIDHALSDHLSADHALHDA' ] ];
Best Regards,
Wonko
In reply to Re: writing to arrays
by Wonko the sane
in thread writing to arrays
by Superman
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |