如何有效率地存取和轉換Go字串中的字元?
Dec 19, 2024 am 06:22 AMGolang 字串中的字元索引
Go 字串表示為 UTF-8 編碼中的位元組序列。若要存取可能佔用多個位元組的單一字符,可以利用字串或 []rune 轉換。
存取 ASCII 字元
在範例中:
fmt.Print("HELLO"[1])
登入後複製
存取字串「HELLO」索引 1 處的字元。由於 ASCII 字元僅佔用一個位元組,因此結果為位元組值 69。
將位元組轉換為字元
要取得實際的字元值,可以將位元組轉換到一個字串。這可確保正確的UTF-8 處理:
fmt.Println(string("Hello"[1])) // ASCII only
登入後複製
存取Unicode 字元
對於可以跨越多個位元組的Unicode 字符,需要[]rune 轉換:
fmt.Println(string([]rune("Hello, 世界")[1])) // UTF-8
登入後複製
將符文轉換為位元組
要將符文轉換回位元組切片,可以將其作為參數傳遞給[]byte:
fmt.Println(string([]byte("Hello"))) // ASCII only
登入後複製
參考文獻:
- [Go 程式語言規格部分轉換](https://go.dev/ref/spec#Conversions)
- [Go 部落格:Go 中的字串、位元組、符文和字元](https://blog.golang.org/strings -bytes-runes-and-characters-in-go)
以上是如何有效率地存取和轉換Go字串中的字元?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)