Проверить, присутствует ли указанный элемент в срезе байтов в Golang
В языке Go фрагмент более мощный, гибкий, удобный, чем массив, и представляет собой легкую структуру данных. Срез представляет собой последовательность переменной длины, в которой хранятся элементы аналогичного типа, вам не разрешается хранить элементы разных типов в одном срезе. В срезе байтов Go вы можете проверить, содержит ли данный срез указанный элемент или нет, используя следующие функции. Эти функции определены в пакете байтов, поэтому вам необходимо импортировать пакет байтов в свою программу для доступа к этим функциям.
1. Содержит: эта функция используется для проверки, присутствует ли указанный элемент в заданном срезе байтов. Этот метод возвращает true, если элемент присутствует в срезе, или возвращает false, если элемент отсутствует в данном срезе.
Синтаксис:
func Содержит (slice_1, sub_slice [] byte) bool
Example:
// Go program to illustrate how to check the// slice contains the specified element in itpackage main import ( "bytes" "fmt") func main() { // Creating and initializing // slice of bytes // Using shorthand declaration slice_1 := []byte{"A", "N", "M", "O", "P", "Q"} // Checking the slice // using Contains function res1 := bytes.Contains(slice_1, []byte{"A"}) res2 := bytes.Contains(slice_1, []byte{"x"}) res3 := bytes.Contains([]byte("GeeksforGeeks"), []byte("ks")) res4 := bytes.Contains([]byte("Geeks"), []byte("")) res5 := bytes.Contains([]byte(""), []byte("")) // Displaying results fmt.Println("Result 1:", res1) fmt.Println("Result 2:", res2) fmt.Println("Result 3:", res3) fmt.Println("Result 4:", res4) fmt.Println("Result 5:", res5) } |
Выход:
Result 1: true Result 2: false Result 3: true Result 4: true Result 5: true
2. ContainsAny: эта функция используется для проверки, присутствует ли какая-либо из кодированных точек в кодировке UTF-8 в символах или нет в данном срезе байтов. Этот метод возвращает истину, если любая из кодовых точек в кодировке UTF-8 в символах присутствует в срезе, или возвращает ложь, если какая-либо из кодовых точек в кодировке UTF-8 в символах отсутствует в данном срезе.
Синтаксис:
func ContainsAny (slice_1 [] байт, строка charstr) bool
Example:
// Go program to illustrate how to check the// slice contain the specified string in itpackage main import ( "bytes" "fmt") func main() { // Creating and initializing // slice of bytes // Using shorthand declaration slice_1 := []byte{"A", "N", "M", "O", "P", "Q"} // Checking the slice // Using ContainsAny function res1 := bytes.ContainsAny(slice_1, "A") res2 := bytes.ContainsAny(slice_1, "a") res3 := bytes.ContainsAny([]byte("GeeksforGeeks"), "ksjkd") res4 := bytes.ContainsAny([]byte("Geeks"), "") res5 := bytes.ContainsAny([]byte(""), "") // Displaying results fmt.Println("Result 1:", res1) fmt.Println("Result 2:", res2) fmt.Println("Result 3:", res3) fmt.Println("Result 4:", res4) fmt.Println("Result 5:", res5) } |
Выход:
Результат 1: верно Результат 2: ложь Результат 3: верно Результат 4: ложь Результат 5: ложь