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

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

Функция Trim

func Trim(s, cutset string) string

Trim возвращает срез строки s с удаленными ведущими и конечными кодовыми точками Unicode, содержащимися в cutset.

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

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Print(strings.Trim("¡¡¡Hello, Gophers!!!", "!¡"))
}

Вывод:

Hello, Gophers

Функция TrimFunc

func TrimFunc(s string, f func(rune) bool) string

TrimFunc возвращает срез строки s с удаленными начальными и конечными кодовыми точками Unicode c, удовлетворяющими f(c).

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

package main

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

func main() {
    fmt.Print(strings.TrimFunc("¡¡¡Hello, Gophers!!!", func(r rune) bool {
        return !unicode.IsLetter(r) && !unicode.IsNumber(r)
    }))
}

Вывод:

Hello, Gophers

Функция TrimLeft

func TrimLeft(s, cutset string) string

TrimLeft возвращает фрагмент строки s с удаленными ведущими кодовыми точками Unicode, содержащимися в cutset.

Чтобы удалить префикс, используйте вместо этого TrimPrefix.

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

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Print(strings.TrimLeft("¡¡¡Hello, Gophers!!!", "!¡"))
}

Вывод:

Hello, Gophers!!!

Функция TrimLeftFunc

func TrimLeftFunc(s string, f func(rune) bool) string

TrimLeftFunc возвращает срез строки s со всеми ведущими кодовыми точками Unicode c, удовлетворяющими f(c), удаленными.

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

package main

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

func main() {
    fmt.Print(strings.TrimLeftFunc("¡¡¡Hello, Gophers!!!", func(r rune) bool {
        return !unicode.IsLetter(r) && !unicode.IsNumber(r)
    }))
}

Вывод:

Hello, Gophers!!!

Функция TrimPrefix

func TrimPrefix(s, prefix string) string

TrimPrefix возвращает s без переданной строки префикса. Если s не начинается с префикса, s возвращается без изменений.

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

package main

import (
    "fmt"
    "strings"
)

func main() {
    var s = "¡¡¡Hello, Gophers!!!"
    s = strings.TrimPrefix(s, "¡¡¡Hello, ")
    s = strings.TrimPrefix(s, "¡¡¡Howdy, ")
    fmt.Print(s)
}

Вывод:

Gophers!!!

Функция TrimRight

func TrimRight(s, cutset string) string

TrimRight возвращает срез строки s, при этом все завершающие кодовые точки Unicode, содержащиеся в cutset, удалены.

Чтобы удалить суффикс, используйте вместо него TrimSuffix.

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

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Print(strings.TrimRight("¡¡¡Hello, Gophers!!!", "!¡"))
}

Вывод:

¡¡¡Hello, Gophers

Функция TrimRightFunc

func TrimRightFunc(s string, f func(rune) bool) string

TrimRightFunc возвращает срез строки s со всеми завершающими кодовыми точками Unicode c, удовлетворяющими f(c), удаленными.

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

package main

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

func main() {
    fmt.Print(strings.TrimRightFunc("¡¡¡Hello, Gophers!!!", func(r rune) bool {
        return !unicode.IsLetter(r) && !unicode.IsNumber(r)
    }))
}

Вывод:

¡¡¡Hello, Gophers

Функция TrimSpace

func TrimSpace(s string) string

TrimSpace возвращает срез строки s с удалением всех начальных и конечных пробелов, как определено в Unicode.

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

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Println(strings.TrimSpace(" \t\n Hello, Gophers \n\t\r\n"))
}

Вывод:

Hello, Gophers

Функция TrimSuffix

func TrimSuffix(s, suffix string) string

TrimSuffix возвращает s без заданной конечной строки суффикса. Если s не заканчивается суффиксом, s возвращается без изменений.

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

package main

import (
    "fmt"
    "strings"
)

func main() {
    var s = "¡¡¡Hello, Gophers!!!"
    s = strings.TrimSuffix(s, ", Gophers!!!")
    s = strings.TrimSuffix(s, ", Marmots!!!")
    fmt.Print(s)
}

Вывод:

¡¡¡Hello


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


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

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