Функция strings.CutPrefix

Функция strings.CutPrefix удаляет указанный префикс из строки. Она возвращает два значения: строку без префикса и булево значение, указывающее, был ли префикс найден и удален. В первый параметр мы передаем исходную строку, во второй параметр мы передаем префикс, который нужно удалить.

Синтаксис

gostrings.CutPrefix(str, prefix)

Пример

Давайте удалим префикс "http://" из строки с URL-адресом:

gopackage main

import (
  "fmt"
  "strings"
)

func main() {
  url := "http://example.com"
  res, found := strings.CutPrefix(url, "http://")
  fmt.Println("Found:", found)
  fmt.Println("Result:", res)
}

Результат выполнения кода:

go"Found: true"
"Result: example.com"

Пример

Давайте проверим, что произойдет, если префикс не найден в строке:

gopackage main

import (
  "fmt"
  "strings"
)

func main() {
  url := "example.com"
  res, found := strings.CutPrefix(url, "http://")
  fmt.Println("Found:", found)
  fmt.Println("Result:", res)
}

Результат выполнения кода:

go"Found: false"
"Result: example.com"

Пример

Давайте удалим префикс из строки и используем результат в дальнейшей работе:

gopackage main

import (
  "fmt"
  "strings"
)

func main() {
  str := "abcde12345"
  if res, found := strings.CutPrefix(str, "abcde"); found {
    fmt.Println("Prefix removed:", res)
  } else {
    fmt.Println("Prefix not found")
  }
}

Результат выполнения кода:

go"Prefix removed: 12345"

Смотрите также

  • функцию strings.CutSuffix,
    которая удаляет суффикс из строки
  • функцию strings.HasPrefix,
    которая проверяет наличие префикса в строке
  • функцию strings.TrimPrefix,
    которая также удаляет префикс из строки
  • функцию strings.Cut,
    которая разделяет строку по первому вхождению подстроки