#!/usr/bin/perl -w use strict; my %user_info; while () { chomp; my ($user, $attribs) = $_ =~ m/^(\S+)\s+(.+)$/; my ($realname, $email, $foo, $bar, undef) = split /\|/, $attribs; $user_info{$user}{'Real Name'} = $realname; $user_info{$user}{'Email'} = $email; $user_info{$user}{'Foo'} = $foo; $user_info{$user}{'Bar'} = $bar; } __DATA__ username Real Name|email@gmail.com|2|30| fred Fred Bloggs|fbloggs@gmail.com|3|27| harryp Harry Potter|harry@gmail.com|5|32| #### foreach my $user (keys %user_info) { print "Username:$user Real Name:$user_info{$user}{'Real Name'}\n"; } #### Username:harryp Real Name:Harry Potter Username:fred Real Name:Fred Bloggs Username:username Real Name:Real Name