Функция bytes.Join

Функция bytes.Join объединяет срез срезов байтов [][]byte в одну строку, используя разделитель. Она возвращает строку string, в которой все элементы исходного среза соединены вместе через разделитель. Первый параметр — это срез срезов байтов для объединения, второй параметр — разделитель типа []byte.

Синтаксис

gobytes.Join(slices [][]byte, separator []byte) string

Пример ⁅n="sect"⁆

Давайте объединим срез байтовых срезов с разделителем в виде запятой:

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  data := [][]byte{[]byte("a"), []byte("b"), []byte("c")}
  sep := []byte(",")
  res := bytes.Join(data, sep)
  fmt.Println(res)
}

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

go"a,b,c"

Пример ⁅n="sect"⁆

Давайте объединим срез байтовых срезов без разделителя:

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  data := [][]byte{[]byte("1"), []byte("2"), []byte("3")}
  sep := []byte("")
  res := bytes.Join(data, sep)
  fmt.Println(res)
}

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

go"123"

Пример ⁅n="sect"⁆

Давайте объединим срез с разделителем в виде пробела:

gopackage main

import (
  "bytes"
  "fmt"
)

func main() {
  data := [][]byte{[]byte("x"), []byte("y"), []byte("z")}
  sep := []byte(" ")
  res := bytes.Join(data, sep)
  fmt.Println(res)
}

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

go"x y z"

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

  • функцию strings.Join,
    которая объединяет срез строк с разделителем
  • функцию bytes.Split,
    которая разделяет байтовый срез на части
  • функцию bytes.Repeat,
    которая повторяет байтовый срез несколько раз
  • функцию bytes.ReplaceAll,
    которая заменяет все вхождения подстроки