sub pad { my( $str, $width, $delim, $pad )= @_; $width= 3 if ! defined $width; $delim= "." if ! defined $delim; $pad= "0" if ! defined $pad; return join $delim, grep {s/ /$pad/g;1} map {sprintf"%${width}s",$_} split /\Q$delim\E/, $str, -1; }