Bagaimanakah saya boleh mengulangi rentetan dengan rune dalam Go?

DDD
Lepaskan: 2024-11-16 03:56:03
asal
852 orang telah melayarinya

How can I iterate over a string by runes in Go?

Lelaran Atas Rentetan oleh Runes dalam Go

Apabila bekerja dengan rentetan dalam Go, selalunya perlu untuk mengulangi setiap aksara atau rune yang membentuk rentetan. Walaupun nampaknya mudah untuk menggunakan jenis []bait terbina dalam, pendekatan ini hanya mempertimbangkan bait yang mewakili rune, bukan rune itu sendiri.

Untuk mengulangi rentetan mengikut rune dengan berkesan, anda boleh menggunakan sintaks julat, yang menyediakan cara yang mudah untuk menggelung pada titik kod Unikod rentetan. Kaedah ini menghuraikan pengekodan UTF-8 rentetan secara automatik, membolehkan anda mengakses rune secara terus.

Berikut ialah contoh:

for pos, char := range "日本語" {
    fmt.Printf("character %c starts at byte position %d\n", char, pos)
}
Salin selepas log masuk

Kod ini akan mencetak:

character 日 starts at byte position 0
character 本 starts at byte position 3
character 語 starts at byte position 6
Salin selepas log masuk

Sintaks julat berulang pada titik kod Unicode rentetan, memberikan akses kepada kedua-dua titik kod itu sendiri (diwakili oleh char) dan permulaannya kedudukan bait dalam rentetan (diwakili oleh pos). Ini membolehkan pemprosesan fleksibel rune dalam rentetan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengulangi rentetan dengan rune dalam Go?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan