Функция Split
func Split(s, sep string) []string
Разбивает срезы s на все подстроки, разделенные sep, и возвращает срез подстрок между этими разделителями.
Если s не содержит sep, а sep не пуст, Split возвращает срез длиной 1, единственным элементом которого является s.
Если sep пуст, Split разбивает после каждой последовательности UTF-8. Если и s, и sep пусты, Split возвращает пустой срез.
Это эквивалентно SplitN со счетчиком -1.
Пример использования Split
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Printf("%q\n", strings.Split("a,b,c", ","))
fmt.Printf("%q\n", strings.Split("a man a plan a canal panama", "a "))
fmt.Printf("%q\n", strings.Split(" xyz ", ""))
fmt.Printf("%q\n", strings.Split("", "Bernardo O'Higgins"))
}
Вывод:
["a" "b" "c"]
["" "man " "plan " "canal panama"]
[" " "x" "y" "z" " "]
[""]
Функция SplitAfter
func SplitAfter(s, sep string) []string
SplitAfter разделяет s на все подстроки после каждого экземпляра sep и возвращает срез этих подстрок.
Если s не содержит sep, а sep не пуст, SplitAfter возвращает срез длиной 1, единственным элементом которого является s.
Если sep пуст, SplitAfter разделяется после каждой последовательности UTF-8. Если и s, и sep пусты, SplitAfter возвращает пустой срез.
Это эквивалентно SplitAfterN со счетчиком -1.
Пример использования SplitAfter
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Printf("%q\n", strings.SplitAfter("a,b,c", ","))
}
Вывод:
["a," "b," "c"]
Функция SplitAfterN
func SplitAfterN(s, sep string, n int) []string
SplitAfterN разделяет s на подстроки после каждого экземпляра sep и возвращает срез этих подстрок.
Счетчик определяет количество возвращаемых подстрок:
n > 0: не более n подстрок; последняя подстрока будет неразделенным остатком.
n == 0: результат равен nil (нулевые подстроки)
n < 0: все подстроки
Крайние случаи для s и sep (например, пустые строки) обрабатываются, как для SplitAfter.
Пример использования SplitAfterN
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Printf("%q\n", strings.SplitAfterN("a,b,c", ",", 2))
}
Вывод:
["a," "b,c"]
Функция SplitN
func SplitN(s, sep string, n int) []string
SplitN разбивает s на подстроки, разделенные sep, и возвращает срез подстрок между этими разделителями.
Счетчик определяет количество возвращаемых подстрок:
n > 0: не более n подстрок; последняя подстрока будет неразделенным остатком.
n == 0: результат равен nil (нулевые подстроки)
n < 0: все подстроки
Крайние случаи для s и sep (например, пустые строки) обрабатываются, как для Split.
Пример использования SplitN
package main
import (
"fmt"
"strings"
)
func main() {
fmt.Printf("%q\n", strings.SplitN("a,b,c", ",", 2))
z := strings.SplitN("a,b,c", ",", 0)
fmt.Printf("%q (nil = %v)\n", z, z == nil)
}
Вывод:
["a" "b,c"]
[] (nil = true)
Читайте также:
- Пакет strings в Golang, функции HasPrefix, HasSuffix, Index
- Пакет strings в Golang, функция Map, Repeat, Replace
- Пакет strings в Golang, функции Join, LastIndex
Комментариев нет:
Отправить комментарий