Функция replace
Функция replace
заменяет подстроку в указанном диапазоне
на новую строку. Принимает три параметра: начальный индекс,
конечный индекс и строку для замены. Замена происходит
с начального индекса включительно по конечный индекс исключительно.
Синтаксис
fun replace(
startIndex: Int,
endIndex: Int,
str: String
): StringBuilder
Пример
Заменим часть строки с индекса 1
по индекс 4
на строку "XYZ"
:
val sb = StringBuilder("abcde")
sb.replace(1, 4, "XYZ")
println(sb.toString())
Результат выполнения кода:
String "aXYZe"
Пример
Замена с использованием индексов за пределами строки
вызовет исключение IndexOutOfBoundsException
:
val sb = StringBuilder("abcde")
try {
sb.replace(10, 15, "XYZ")
} catch (e: IndexOutOfBoundsException) {
println("Error: ${e.message}")
}
Результат выполнения кода:
Error: start 10, end 15, length 5
Пример
Замена пустой строкой эквивалентна удалению символов:
val sb = StringBuilder("abcde")
sb.replace(1, 4, "")
println(sb.toString())
Результат выполнения кода:
String "ae"
Пример
Функция возвращает тот же объект StringBuilder
,
что позволяет использовать цепочку вызовов:
val sb = StringBuilder("abcde")
val result = sb.replace(1, 3, "123")
.append("!")
.toString()
println(result)
Результат выполнения кода:
String "a123de!"
Смотрите также
-
функцию
insert
,
которая вставляет строку в указанную позицию -
функцию
delete
,
которая удаляет символы в указанном диапазоне -
функцию
deleteRange
,
которая удаляет символы в указанном диапазоне -
функцию
setCharAt
,
которая заменяет один символ в указанной позиции