Heim > Backend-Entwicklung > Golang > Wie greife ich auf einzelne Zeichen in einem Go-String statt auf deren numerische Werte zu?

Wie greife ich auf einzelne Zeichen in einem Go-String statt auf deren numerische Werte zu?

DDD
Freigeben: 2024-12-13 03:13:13
Original
459 Leute haben es durchsucht

How to Access Individual Characters in a Go String Instead of Their Numerical Values?

Zugriff auf Zeichen in einem Go-String

Diese Frage untersucht, wie auf Zeichen in einem Go-String zugegriffen wird, und geht dabei auf die Natur von Strings als Slices ein von Bytes und die Beziehung zwischen Zeichen, Runen und Unicode-Codepunkten.

Original Frage:

Wie kann ich beim Zugriff auf „HELLO“[1] das Zeichen „E“ anstelle des Zahlenwerts 69 erhalten?

Antwort:

Um Zeichen aus einer Zeichenfolge abzurufen, muss man die Zeichendarstellung von Go verstehen. Interpretierte Zeichenfolgenliterale sind in UTF-8 codierte Zeichenfolgen, wobei ASCII-Zeichen nur ein Byte belegen. Um das Zeichen „E“ zu erhalten, ist daher die folgende Konvertierung erforderlich:

fmt.Println(string("Hello"[1])) // ASCII only
Nach dem Login kopieren

Alternative: Verwendung von Runen

Für Unicode-Unterstützung Runen, die Unicode darstellen Codepunkte, verwendet werden können. Diese sind mit UTF-8-Zeichenfolgen kompatibel:

fmt.Println(string([]rune("Hello, 世界")[1])) // UTF-8
Nach dem Login kopieren

Dieser Code gibt das „e“-Zeichen aus.

Gos Zeichenhandhabungsfunktionen

Es ist erwähnenswert, dass Go Funktionen zum Konvertieren zwischen Zeichen und Bytes bereitstellt. Beispielsweise wandelt die Methode byte(c) ein Zeichen (Rune) in das entsprechende Byte um, während rune(b) ein Byte in ein Zeichen umwandelt.

Zusätzliche Lesungen:

  • [Gehen Sie zum Abschnitt „Programmiersprachenspezifikation“ weiter Konvertierungen](https://go.dev/ref/spec#Conversions)
  • [The Go Blog: Strings, Bytes, Runen und Zeichen in Go](https://blog.golang.org/strings )

Das obige ist der detaillierte Inhalt vonWie greife ich auf einzelne Zeichen in einem Go-String statt auf deren numerische Werte zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage