#-Code getList(); for (keys %uhash){ print "Final: ArrayNum:$_ and SessionName: $uhash{$_}->{sessionName} SessionId:$uhash{$_}->{sessionId}\n"; } #-Subs sub getList { open FH,"output"; while (){ if ($flag{debug}){ print "DEBUG: OUTPUT: $_\n"; } if (/.*array_index:(\d+):serviceType.*/){ $arrayNum = $1; if ($flag{debug}){ print "DEBUG:ArrayNum: $1\n"; } } unless(!$arrayNum){ if (/.*array_index:$arrayNum:sessionID = (\d+)/){ $sessionId = "$1"; $uhash{$arrayNum}->{sessionId} = $sessionId; if ($flag{debug}){ print "DEBUG:SessionId: $sessionId\n"; } } if (/.*array_index:$arrayNum:name = "(\w+)"/){ $sessionName = "$1"; $uhash{$arrayNum}->{sessionName} = $sessionName; if ($flag{debug}){ print "DEBUG:SessionName: $sessionName\n"; } } } } }