Pengindeksan Aksara dalam Rentetan Golang
Rentetan Go diwakili sebagai jujukan bait dalam pengekodan UTF-8. Untuk mengakses aksara individu, yang mungkin menduduki berbilang bait, seseorang boleh memanfaatkan rentetan atau []penukaran rune.
Mengakses Aksara ASCII
Dalam contoh:
fmt.Print("HELLO"[1])
Watak pada indeks 1 rentetan "HELLO" diakses. Memandangkan aksara ASCII hanya menduduki satu bait, hasilnya ialah nilai bait 69.
Menukar Bait kepada Aksara
Untuk mendapatkan nilai aksara sebenar, bait boleh ditukar kepada rentetan. Ini memastikan pengendalian UTF-8 yang betul:
fmt.Println(string("Hello"[1])) // ASCII only
Mengakses Aksara Unikod
Untuk aksara Unicode, yang boleh menjangkau berbilang bait, []penukaran rune diperlukan:
fmt.Println(string([]rune("Hello, 世界")[1])) // UTF-8
Menukar Rune kepada Bait
Untuk menukar rune kembali kepada kepingan bait, ia boleh dihantar sebagai argumen kepada []bait:
fmt.Println(string([]byte("Hello"))) // ASCII only
Rujukan:
Atas ialah kandungan terperinci Bagaimana untuk Mengakses dan Menukar Aksara dengan Cekap dalam Go Strings?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!