$string =~ s/^(($pattern.*){$n})$pattern/$1$better/;