Функция bytes.HasSuffix

Функция bytes.HasSuffix проверяет, заканчивается ли байтовый срез указанным суффиксом. Она возвращает true, если срез имеет заданный суффикс, и false в противном случае. Первым параметром функция принимает байтовый срез для проверки, вторым - суффикс в виде байтового среза, который нужно найти в конце.

Синтаксис

gobytes.HasSuffix(s, suffix)

Пример

Давайте проверим, заканчивается ли байтовый срез []byte("abcde") суффиксом []byte("cde"):

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  s := []byte("abcde")
  suffix := []byte("cde")
  res := bytes.HasSuffix(s, suffix)
  fmt.Println(res)
}

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

gotrue

Пример

Давайте проверим, заканчивается ли байтовый срез []byte("abcde") суффиксом []byte("xyz"):

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  s := []byte("abcde")
  suffix := []byte("xyz")
  res := bytes.HasSuffix(s, suffix)
  fmt.Println(res)
}

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

gofalse

Пример

Проверим, заканчивается ли байтовый срез пустым суффиксом:

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  s := []byte("abcde")
  suffix := []byte("")
  res := bytes.HasSuffix(s, suffix)
  fmt.Println(res)
}

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

gotrue

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

  • функцию bytes.HasPrefix,
    которая проверяет наличие префикса в байтовом срезе
  • функцию bytes.Contains,
    которая проверяет наличие подстроки в байтовом срезе
  • функцию bytes.TrimSuffix,
    которая удаляет суффикс из байтового среза
  • функцию strings.HasSuffix,
    которая выполняет аналогичную проверку для строк