How do you need your output to be?
update assuming you wnat to take everything between two dates and put all into one line and everything separated by commas, I came up with this example:
use strict;
use warnings;
my $text;
while(<DATA>) {
chomp($_);
if($_ =~ /\d{1,2}\/\d{1,2}\/\d{4}/) {
$text .= "\n" unless $. == 1;
$text .= $_;
} else {
$text .= ",".$_;
}
}
print $text;
__DATA__
1/3/2007 12:20:01 AM
Login,12.588309
SearchLoad,9.432586
SearchCount,20:0.196329
SearchResults,7.418672
SearchSave,3.616305
SearchDelete,2.066482
SearchDetails,6.873061
ClientAdd,0.784989
CMALoad,1.859894
CMASave,3.249620
CMADelete,0.450952
ClientDelete,0.305768
Logout,0.823402
1/3/2007 12:49:22 AM
Login,10.958312
SearchLoad,13.644527
SearchCount,41:0.483233
SearchResults,7.027840
SearchSave,4.222601
SearchDelete,0.305821
SearchDetails,7.443877
ClientAdd,1.552915
CMALoad,1.202711
CMASave,5.285398
CMADelete,0.233119
ClientDelete,0.425521
Logout,0.560862
outputs
1/3/2007 12:20:01 AM,Login,12.588309,SearchLoad,9.432586,SearchCount,2
+0:0.196329,SearchResults,7.418672,SearchSave,3.616305,SearchDelete,2.
+066482,SearchDetails,6.873061,ClientAdd,0.784989,CMALoad,1.859894,CMA
+Save,3.249620,CMADelete,0.450952,ClientDelete,0.305768,Logout,0.82340
+2
1/3/2007 12:49:22 AM,Login,10.958312,SearchLoad,13.644527,SearchCount,
+41:0.483233,SearchResults,7.027840,SearchSave,4.222601,SearchDelete,0
+.305821,SearchDetails,7.443877,ClientAdd,1.552915,CMALoad,1.202711,CM
+ASave,5.285398,CMADelete,0.233119,ClientDelete,0.425521,Logout,0.5608
+62