my $file = 'tmp.txt'; my $out = 'out.txt'; open(FILE, "<", $file) || die "Can't open $file: $!\n"; open(OUT, ">", $out) || die "Can't open $out: $!\n"; while(){ s/(\d+\/\d+\/\d+).*?(%PIX.+)/$1 $2/g; s/\// /g; s/\w+\:(\d+\.\d+\.\d+\.\d+)/$1/g; print OUT $_; } close FILE; close OUT;