воскресенье, 6 сентября 2020 г.

Пакет strings в Golang, функции Join, LastIndex

Функция Join

func Join(elems []string, sep string) string

Join объединяет элементы своего первого аргумента для создания единой строки. Строка-разделитель sep помещается между элементами в результирующей строке.

Пример использования Join

package main

import (
    "fmt"
    "strings"
)

func main() {
    s := []string{"foo", "bar", "baz"}
    fmt.Println(strings.Join(s, ", "))
}

Вывод:

foo, bar, baz

Функция LastIndex

func LastIndex(s, substr string) int

LastIndex возвращает индекс последнего экземпляра substr в s или -1, если substr отсутствует в s.

Пример использования LastIndex

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.Index("go gopher", "go"))
    fmt.Println(strings.LastIndex("go gopher", "go"))
    fmt.Println(strings.LastIndex("go gopher", "rodent"))
}

Вывод:

0
3
-1

Функция LastIndexAny

func LastIndexAny(s, chars string) int

LastIndexAny возвращает индекс последнего экземпляра любой кодовой точки Unicode из символов в s или -1, если в s нет кодовой точки Unicode из символов.

Пример использования LastIndexAny

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.LastIndexAny("go gopher", "go"))
    fmt.Println(strings.LastIndexAny("go gopher", "rodent"))
    fmt.Println(strings.LastIndexAny("go gopher", "fail"))
}

Вывод:

4
8
-1

Функция LastIndexByte

func LastIndexByte(s string, c byte) int

LastIndexByte возвращает индекс последнего экземпляра c в s или -1, если c отсутствует в s.

Пример использования LastIndexByte

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.LastIndexByte("Hello, world", 'l'))
    fmt.Println(strings.LastIndexByte("Hello, world", 'o'))
    fmt.Println(strings.LastIndexByte("Hello, world", 'x'))
}

Вывод:

10
8
-1

Функция LastIndexFunc

func LastIndexFunc(s string, f func(rune) bool) int

LastIndexFunc возвращает индекс в s последней кодовой точки Unicode, удовлетворяющей f(c), или -1, если ничего не выполняется.

Пример использования LastIndexFunc

package main

import (
    "fmt"
    "strings"
    "unicode"
)

func main() {
    fmt.Println(strings.LastIndexFunc("go 123", unicode.IsNumber))
    fmt.Println(strings.LastIndexFunc("123 go", unicode.IsNumber))
    fmt.Println(strings.LastIndexFunc("go", unicode.IsNumber))
}

Вывод:

5
2
-1


Читайте также:


Комментариев нет:

Отправить комментарий