Đi - Chuỗi
Chuỗi, được sử dụng rộng rãi trong lập trình cờ vây, là một phần byte chỉ đọc. Trong ngôn ngữ lập trình Go, các chuỗi làslices. Nền tảng Go cung cấp các thư viện khác nhau để thao tác các chuỗi.
- unicode
- regexp
- strings
Tạo chuỗi
Cách trực tiếp nhất để tạo một chuỗi là viết:
var greeting = "Hello world!"
Bất cứ khi nào nó gặp một chuỗi ký tự trong mã của bạn, trình biên dịch sẽ tạo một đối tượng chuỗi với giá trị của nó trong trường hợp này là "Hello world!".
Một chuỗi ký tự chứa một chuỗi UTF-8 hợp lệ được gọi là rune. Một chuỗi chứa các byte tùy ý.
package main
import "fmt"
func main() {
var greeting = "Hello world!"
fmt.Printf("normal string: ")
fmt.Printf("%s", greeting)
fmt.Printf("\n")
fmt.Printf("hex bytes: ")
for i := 0; i < len(greeting); i++ {
fmt.Printf("%x ", greeting[i])
}
fmt.Printf("\n")
const sampleText = "\xbd\xb2\x3d\xbc\x20\xe2\x8c\x98"
/*q flag escapes unprintable characters, with + flag it escapses non-ascii
characters as well to make output unambigous */
fmt.Printf("quoted string: ")
fmt.Printf("%+q", sampleText)
fmt.Printf("\n")
}
Điều này sẽ tạo ra kết quả sau:
normal string: Hello world!
hex bytes: 48 65 6c 6c 6f 20 77 6f 72 6c 64 21
quoted string: "\xbd\xb2=\xbc \u2318"
Note - Chuỗi ký tự là không thay đổi, vì vậy một khi nó được tạo, một ký tự chuỗi không thể thay đổi.
Chiều dài chuỗi
Phương thức len (str) trả về số byte có trong chuỗi ký tự.
package main
import "fmt"
func main() {
var greeting = "Hello world!"
fmt.Printf("String Length is: ")
fmt.Println(len(greeting))
}
Điều này sẽ tạo ra kết quả sau:
String Length is : 12
Nối các chuỗi
Gói chuỗi bao gồm một phương thức join để nối nhiều chuỗi -
strings.Join(sample, " ")
Tham gia nối các phần tử của một mảng để tạo ra một chuỗi duy nhất. Tham số thứ hai là seperator được đặt giữa phần tử của mảng.
Chúng ta hãy xem ví dụ sau:
package main
import ("fmt" "math" )"fmt" "strings")
func main() {
greetings := []string{"Hello","world!"}
fmt.Println(strings.Join(greetings, " "))
}
Điều này sẽ tạo ra kết quả sau:
Hello world!