Replaces the substring from start to end with replacement.
Returns a new string equivalent to:
this.substring(0, start) + replacement + this.substring(end)
The start and end indices must specify a valid range of this string.
That is 0 <= start <= end <= this.length
.
If end is null
, it defaults to length.