in reply to Re^2: Manipulating Data by a Field Identifier
in thread Manipulating Data by a Field Identifier
This means that you really can't print each line as you iterate, because you need to gather both numbers. One approach to this problem may be to use a hash. Something like the following may work:
And then...my %users; while (<CSV>) { next if ($. == 1); if ($csv->parse($_)) { my @columns = $csv->fields(); my @choppedcols = $csv->fields(); my $username = lc($columns[1]); $users{$username}{first_name} = ($columns[2]); $users{$username{last_name} = ($columns[3]); # etc... then my $telephone = ($columns[8]).-($columns[6]); if ($columns[8] == 1) { $users{$username}{fax_number} = $telephone; } else { $users{$username}{phone_number} = $telephone; } } }
for my $user (keys %users) { print "dn: uid=$user\n", "givenName: $users{$user}{first_name}\n", "sn: $user{$user}{last_name}\n", #etc... "telephonNumber: $users{$user}{phone_number}\n", "faxNumber: $users{$user}{fax_number}\n"; }
Cheers,
Darren :)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Manipulating Data by a Field Identifier
by rycher (Acolyte) on May 04, 2009 at 04:25 UTC | |
|