Du änderst die Variable $variable aber nicht den $string den am Anfang bildest. Sprich es kann sich nichts ändern.
Das kenne ich aber zum Beispiel von PHP her anders. Ist irgendwie blöd
Mal abgesehen davon, sollte man ja globale Variablen wenn möglich vermeiden. Siehe hier: https://autoit.de/index.php?page=Thread&postID=203773
Das Skript ist nicht so groß, dass es Probleme geben sollte.
Globale Variablen hin oder her, auf jeden Fall solltest du es dir angewöhnen deine Variablen ordentlich zu deklarieren (mit dem Global oder dem Local Keyword).
Habe ich in meinem Skript, nur hier wegen Faulheit weggelassen