How remove email-address from string?

That looks rather complicated, why not use RegExReplace instead?

string =
(
This is some text and it continues like this
until sometimes an email adress shows up [email protected]

also some more text here and here.
)

newWordString := RegExReplace(string, "\S+@\S+(?:\.\S+)+", "[email_removed]")

MsgBox, % newWordString

Feel free to make the pattern as simple or as complicated as you want, depending on your needs, but RegExReplace should do it.