my @l = (0, 7, 6, 5, 4, 3, 2, 1); $str =~ s/\G([^\t]*)\t/$1 . (' ' x $l[length($1) % 8])/eg;