Heim >Backend-Entwicklung >Golang >Wie iteriere ich über Strings nach Runen in Go?

Wie iteriere ich über Strings nach Runen in Go?

Linda Hamilton
Linda HamiltonOriginal
2024-11-14 21:20:02633Durchsuche

How to Iterate Over Strings by Runes in Go?

Iterieren über Strings durch Runen in Go

Das Iterieren über Strings Zeichen für Zeichen kann in verschiedenen Programmierszenarien nützlich sein. In Go führt der direkte Zugriff auf Zeichen mit str[i] jedoch zum Zugriff auf Bytes statt auf Unicode-Runen. Daher ist es notwendig, alternative Methoden zum Durchlaufen von Zeichenfolgen mithilfe von Runen zu untersuchen.

Um mithilfe von Runen über eine Zeichenfolge zu iterieren, können Sie das Schlüsselwort „range“ verwenden. Wie im Beispiel von Effective Go gezeigt:

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

Diese Schleife durchläuft die Unicode-Codepunkte in der Zeichenfolge und gibt das Zeichen und die entsprechende Byteposition aus.

Die wichtigste Erkenntnis ist, dass das Schlüsselwort „range“ die UTF-8-Zeichenfolge intelligent analysiert und sie in einzelne Unicode-Codepunkte zerlegt, was zu einer effizienteren und bequemeren Iteration führt.

Das obige ist der detaillierte Inhalt vonWie iteriere ich über Strings nach Runen in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn