my $str = "12345"; my $dots = ""; while (length($dots) <= length($str)-2) { $_ = $str; s/^($dots)(.)(.)(.*)/$1$3$2$4/s; print; $dots .= "."; }