Alle Artikel

Unicode Escape: was \uXXXX-Sequenzen bedeuten

Das deutsche ß hat erst 2017 offiziell eine eigene Großbuchstabenform bekommen — ẞ (U+1E9E) — Jahrzehnte nachdem das kleine ß selbst längst einen festen Platz in Unicode hatte. Als Escape-Sequenz sind beide Formen trotzdem einfach: \u00df für ß und \u1e9e für ẞ, jeweils ein einziger Codepunkt.

Wie ein deutscher Satz mit Escapes aussieht

Ein Wort wie „Straße" erzeugt einen Escape-Code für das ß, der keine Entsprechung als „ss" hat – beide Schreibweisen sind im Deutschen unterschiedlich und keine reine Umwandlungsfrage. Das führt gelegentlich zu Fehlern, wenn ein Tool ß automatisch durch „ss" ersetzt, weil es dachte, das sei eine sichere Vereinfachung.

JSON und Escape-Sequenzen

Die JSON-Spezifikation erlaubt es, jedes Zeichen eines Strings als \uXXXX zu escapen. Das passiert häufig, wenn Daten programmatisch erzeugt werden und der Serialisierer Zeichen außerhalb von ASCII aus Kompatibilitätsgründen vermeidet – dann erscheint ein Wort wie „Größe" in einem JSON als Folge mehrerer Escape-Codes.

Wann man das braucht

  • In Klartext lesen, welcher Text sich hinter Escape-Sequenzen in einer JSON-API-Antwort verbirgt.
  • Einen String für eine Umgebung vorbereiten, die keine Zeichen außerhalb von ASCII akzeptiert.
  • Kodierungsprobleme beim Arbeiten mit externen Daten diagnostizieren.

Zeichen außerhalb der Basisebene (Emojis)

Sowohl ß als auch die Umlaute passen in jeweils einen einzigen Escape-Code, weil sie zur Basic Multilingual Plane gehören. Emojis dagegen liegen außerhalb dieser Ebene und werden in JavaScript mit zwei Codes kodiert – einem Surrogatpaar wie \ud83d\ude00 –, was bei keinem deutschen Buchstaben vorkommt.

Tool ausprobieren