#!perl -w $oldlo = 999; while (<>) { chop; /^(.*lokey=)(\d+)(.*hikey=)(\d+)(.*)$/ or next; ($oldlo > $2) and ($oldlo = $2); $lo = sprintf("%03i", $oldlo); $oldlo = $4 + 1; print "$1${lo}$3$4$5\n"; }