Example: Fields and FieldsFunc from BYTES Package
Fields splits the slice s around each instance of one or more consecutive white space characters, returning a slice of subslices of s or an empty list if s contains only white space.
FieldsFunc interprets s as a sequence of UTF-8-encoded Unicode code points. It splits the slice s at each run of code points c satisfying f(c) and returns a slice of subslices of s.
Example
package main
import (
"bytes"
"fmt"
"strings"
)
func main() {
fmt.Println("############ Fields #####################\n")
listCountry := []byte(" Australia Canada Japan Germany India")
fmt.Printf("%q",listCountry)
country := bytes.Fields(listCountry)
for index,element := range country{
fmt.Printf("\n%d => %q", index, element)
}
fmt.Println("\n############ FieldsFunc #####################\n")
sentence := []byte("The Go language has built-in facilities, as well as library support, for writing concurrent programs.")
fmt.Printf("%q",sentence)
vowelsSpace := "aeiouy "
chop := bytes.FieldsFunc(sentence, func(r rune) bool {
return strings.ContainsRune(vowelsSpace, r)
})
for index,element := range chop{
fmt.Printf("\n%d => %q", index, element)
}
}
Output
############ Fields #####################
" Australia Canada Japan Germany India"
0 => "Australia"
1 => "Canada"
2 => "Japan"
3 => "Germany"
4 => "India"
############ FieldsFunc #####################
"The Go language has built-in facilities, as well as library support, for writing concurrent programs."
0 => "Th"
1 => "G"
2 => "l"
3 => "ng"
4 => "g"
5 => "h"
6 => "s"
7 => "b"
8 => "lt-"
9 => "n"
10 => "f"
11 => "c"
12 => "l"
13 => "t"
14 => "s,"
15 => "s"
16 => "w"
17 => "ll"
18 => "s"
19 => "l"
20 => "br"
21 => "r"
22 => "s"
23 => "pp"
24 => "rt,"
25 => "f"
26 => "r"
27 => "wr"
28 => "t"
29 => "ng"
30 => "c"
31 => "nc"
32 => "rr"
33 => "nt"
34 => "pr"
35 => "gr"
36 => "ms."
Most Helpful This Week
Split a character string based on change of character
Example: How to use ReadAtLeast from IO Package in Golang?
Find length of Channel, Pointer, Slice, String and Map
Split a string at uppercase letters using regular expression in Golang
Regular expression to validate common Credit Card Numbers
Higher Order Functions in Golang
How to get the current date and time with timestamp in local and other timezones ?
How to get first and last element of slice in Golang?
How to read input from console line?
Example to handle GET and POST request in Golang