thanks that's good stuff but columns are not fixed so it could be
2009/03/30 23:11:34.553 DFP
2009/03/30 23:11:34.553 DFP 12[1.24] [1.3]
2009/03/30 23:11:34.553 Pctreas no remark [2.3] (obsolete)
I tested with your code doesn't work
my %hash=('08'=>'09','23'=>'00');
my @array=('2009/03/30 08:11:34.553 DFP','2009/03/30 23:11:36.861 PLO');
open $fh,"<","a.spl";
map { my @arr=split("[ :]",$_,3); print $arr[0]," ",$hash{$arr[1]},":",$arr[2],"\n"} @array;