Функция strings.Replace
Функция strings.Replace заменяет в исходной строке первые
n вхождений указанной подстроки на новую строку.
В первый параметр мы передаем исходную строку, во второй —
подстроку, которую нужно заменить, в третий — строку для замены,
а в четвертый — количество замен. Если передать -1,
то будут заменены все вхождения.
Синтаксис
strings.Replace(original, old, new string, n int) string
Пример
Давайте заменим в строке 'abcde' подстроку 'bc'
на '12', но только первое вхождение:
package main
import (
"fmt"
"strings"
)
func main() {
res := strings.Replace("abcde", "bc", "12", 1)
fmt.Println(res)
}
Результат выполнения кода:
"a12de"
Пример
Давайте заменим в строке 'abcdeabcde' все вхождения
подстроки 'bc' на '12', передав в четвертом
параметре -1:
package main
import (
"fmt"
"strings"
)
func main() {
res := strings.Replace("abcdeabcde", "bc", "12", -1)
fmt.Println(res)
}
Результат выполнения кода:
"a12dea12de"
Пример
Давайте заменим в строке '1234512345' только первые
два вхождения подстроки '23' на 'ab':
package main
import (
"fmt"
"strings"
)
func main() {
res := strings.Replace("1234512345", "23", "ab", 2)
fmt.Println(res)
}
Результат выполнения кода:
"1ab451ab45"
Пример
Если искомая подстрока не найдена, функция возвращает исходную строку без изменений:
package main
import (
"fmt"
"strings"
)
func main() {
res := strings.Replace("abcde", "xyz", "123", -1)
fmt.Println(res)
}
Результат выполнения кода:
"abcde"
Смотрите также
-
функцию
strings.ReplaceAll,
которая заменяет все вхождения подстроки -
функцию
strings.Count,
которая подсчитывает количество вхождений подстроки -
функцию
strings.Index,
которая возвращает позицию первого вхождения подстроки -
функцию
strings.Contains,
которая проверяет наличие подстроки в строке