Jackie Jackie wrote:
Desired output:
name1&firstname1&adresse1
name2&firstname2&adresse2
name3&firstname3&adresse3
name4&firstname4&adresse4
name5&firstname5&adresse5
etc.
#!/usr/bin/perl -w
use strict;
local $/ = "\n\n";
my @data = map [ map [ split /\n/ ], split /\n&\n/ ], <DATA>;
for my $d ( @data ) {
for my $i ( 0 .. $#{ $d->[0] } ) {
print join( "&", map $_->[$i], @$d ), "\n";
}
print "\n";
}
__DATA__
[your data]
which prints:
name1&firstname1&adresse1
name2&firstname2&adresse2
name3&firstname3&adresse3
name4&firstname4&adresse4
name5&firstname5&adresse5
name6&firstname6&adresse6
name7&firstname7&adresse7
Variant:
#!/usr/bin/perl -wl
use strict;
local $/ = "\n\n";
print "$_\n" for map {
my $d = $_; join "\n", map {
my $i = $_; join "&", map $_->[$i], @$d
} 0 .. $#{$d->[0]}
} map [ map [ split /\n/ ], split /\n&\n/ ], <DATA>;
--
Ruud
--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/