Строка неизменна, что означает, что вы не можете изменить их после инициализации.
Метод replaceFirst
создает новую строку, в которой первый экземпляр заменяется заменой, и возвращает ее ... исходная строка никогда не изменяется.
Ваш код должен быть примерно таким
string = string.replaceFirst(substring,"")