Метод regexp.Regexp.Split
Метод Split разделяет исходную строку на подстроки, используя
регулярное выражение в качестве разделителя. Первым параметром
метод принимает строку для разделения, вторым параметром -
количество подстрок, которое нужно вернуть.
Если указать -1, то будут возвращены все подстроки.
Метод возвращает слайс строк.
Синтаксис
re.Split(s string, n int) []string
Пример
Давайте разделим строку "a,b,c,d,e" по запятой:
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`,`)
res := re.Split("a,b,c,d,e", -1)
fmt.Println(res)
}
Результат выполнения кода:
[a b c d e]
Пример
Разделим строку "1,2,3,4,5" по запятой, но вернем только первые 3 подстроки:
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`,`)
res := re.Split("1,2,3,4,5", 3)
fmt.Println(res)
}
Результат выполнения кода:
[1 2 3,4,5]
Пример
Разделим строку "abc123def456ghi" по цифрам:
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`\d+`)
res := re.Split("abc123def456ghi", -1)
fmt.Println(res)
}
Результат выполнения кода:
[abc def ghi]
Пример
Разделим строку по пробелам и нескольким пробелам:
package main
import (
"fmt"
"regexp"
)
func main() {
re := regexp.MustCompile(`\s+`)
res := re.Split("one two three four", -1)
fmt.Println(res)
}
Результат выполнения кода:
[one two three four]
Смотрите также
-
функцию
regexp.Compile,
которая компилирует регулярное выражение -
функцию
regexp.MustCompile,
которая компилирует регулярное выражение с паникой при ошибке -
метод
Regexp.FindAllString,
который находит все совпадения регулярного выражения в строке -
метод
Regexp.ReplaceAllString,
который заменяет все совпадения регулярного выражения на другую строку