存取Golang 字串中的字元
在Go 中,存取字串中的字元與其對應的ASCII 不同,傳回底層字節值而不是角色。由於字串表示位元組數組,因此檢索第一個字元會得到其數字 ASCII 表示形式。例如,「HELLO」[1] 傳回 69,而不是預期的「E」。
解決方案:轉換為 ASCII 或 Unicode 碼點
取得實際值角色,請考慮採用以下技巧:
1. ASCII(單字節字元):
將位元組值轉換為字串,有效傳回ASCII 字元:
fmt.Println(string("Hello"[1])) // Prints "e"
2. Unicode(多位元組字元):
將字串轉換為符文片段(Unicode代碼點)並存取所需位置:
fmt.Println(string([]rune("Hello, 世界")[1])) // Prints "e" (ASCII) fmt.Println(string([]rune("Hello, 世界")[8])) // Prints "界" (UTF-8)
附加說明:
以上是如何正確存取Go字串中的字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!