use strict;
use warnings;
my $string = "field1=1 field2=2 field3=abc";
my @pairs = split(/\s+/,$string);
my %hash = map { split(/=/, $_, 2) } @pairs;
printf "%s,%s,%s\n", $hash{field2}, $hash{field1}, $hash{field3};
print join(",", @hash{qw(field2 field1 field3)}), "\n";
source
share