Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Mengakses dan Menukar Aksara dengan Cekap dalam Go Strings?

Bagaimana untuk Mengakses dan Menukar Aksara dengan Cekap dalam Go Strings?

Mary-Kate Olsen
Lepaskan: 2024-12-19 06:22:13
asal
799 orang telah melayarinya

How to Efficiently Access and Convert Characters in Go Strings?

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])
Salin selepas log masuk

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
Salin selepas log masuk

Mengakses Aksara Unikod

Untuk aksara Unicode, yang boleh menjangkau berbilang bait, []penukaran rune diperlukan:

fmt.Println(string([]rune("Hello, 世界")[1])) // UTF-8
Salin selepas log masuk

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
Salin selepas log masuk

Rujukan:

  • [Pergi bahagian Spesifikasi Bahasa Pengaturcaraan pada Penukaran](https://go.dev/ref/spec#Conversions)
  • [The Go Blog: Rentetan, bait, rune dan aksara dalam Go](https://blog.golang.org/strings -bait-rune-dan-aksara-dalam-pergi)

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan