Функция strings.IndexAny

Функция strings.IndexAny возвращает индекс первого вхождения любого символа из указанного набора в строке. В первый параметр мы передаем строку для поиска, во второй параметр мы передаем набор символов (в виде строки), любой из которых нужно найти. Функция возвращает позицию первого найденного символа в виде целого числа типа int. Если ни один символ из набора не найден, возвращается -1.

Синтаксис

gostrings.IndexAny(str, chars)

Пример

Давайте найдем позицию первого символа из набора "123" в строке "abcde12345":

gopackage main

import (
  "fmt"
  "strings"
)

func main() {
  res := strings.IndexAny("abcde12345", "123")
  fmt.Println(res)
}

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

go5

Пример

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

gopackage main

import (
  "fmt"
  "strings"
)

func main() {
  res := strings.IndexAny("abcde", "123")
  fmt.Println(res)
}

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

go-1

Пример

Поиск первого символа из набора "aeiou" в строке "Hello World":

gopackage main

import (
  "fmt"
  "strings"
)

func main() {
  res := strings.IndexAny("Hello World", "aeiou")
  fmt.Println(res)
}

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

go1

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

  • функцию strings.Index,
    которая возвращает позицию первого вхождения подстроки
  • функцию strings.LastIndexAny,
    которая возвращает позицию последнего вхождения любого символа из набора
  • функцию strings.ContainsAny,
    которая проверяет наличие любого символа из набора в строке
  • функцию strings.IndexRune,
    которая возвращает позицию первого вхождения руны