Suche…


Bemerkungen

Ein Unicode-Codepunkt, den Programmierer häufig von einem Zeichen halten, entspricht häufig dem, was der Benutzer für ein Zeichen hält. Manchmal besteht ein „Zeichen“ jedoch aus mehreren Codepunkten, wie die obigen Beispiele zeigen.

Dies bedeutet, dass Operationen wie das Schneiden einer Zeichenkette oder das Abrufen eines Zeichens an einem bestimmten Index möglicherweise nicht wie erwartet funktionieren. Zum Beispiel ist das vierte Zeichen der Zeichenfolge "Café" 'e' (ohne Akzent). Wenn Sie den String auf Länge 4 ausschneiden, wird der Akzent entfernt.

Der Fachbegriff für eine solche Gruppe von Codepunkten ist ein Graphem-Cluster . Siehe UAX Nr. 29: Unicode-Textsegmentierung

Diakritiker

Ein Brief mit einem Diakriten kann mit dem Buchstaben und einem kombinierenden Zusatzbuchstaben dargestellt werden. Normalerweise denken Sie an als ein Zeichen, aber es sind wirklich zwei Codepunkte:

  • U+0065 - LATEINISCHER KLEINER BUCHSTABE E
  • U+0301 - KOMBINIERENDER AKUTE-AKZENT

Ebenso = c + ¸ und = a + ˚

kombinierte Formen

Zur Vereinfachung gibt es häufig auch einen Code für das zusammengesetzte Formular:

"Café" = 'C' + 'a' + 'f' + 'e' + '´'
"Café" = 'C' + 'a' + 'f' + 'é'

Obwohl diese Zeichenfolgen gleich aussehen, sind sie nicht gleich und sie haben nicht einmal die gleiche Länge (5 bzw. 4).

Zalgo Text

Es gibt dieses Ding namens Zalgo Text, das dies extrem macht. Hier ist der erste Graphem-Cluster des Beispiels. Es besteht aus 15 Codepunkten: dem lateinischen Buchstaben H und 14 Kombinationsmarken.

H̡̫̤̤̣͉̤ͭ̓̓̇͗̎̀

Obwohl dies im normalen Text nicht angezeigt wird, zeigt es, dass ein „Zeichen“ tatsächlich aus einer beliebigen Anzahl von Codepunkten bestehen kann

Emoji und Fahnen

Viele Emoji bestehen aus mehr als einem Codepunkt.

  • 🇯🇵: Eine Flagge ist definiert als Paar "Regionalzeichen" (🇯 + 🇵).
  • Some: Auf einige Emojis kann ein Modifikator für die Hautfarbe folgen: 🙋 + 🏿
  • 😀︎ oder 😀️: In Windows 10 können Sie festlegen, ob ein Emoji farbig oder schwarz / weiß ist, indem Sie eine Variationsauswahl anhängen ( U+FE0E oder U+FE0F )
  • 👨‍👩‍👧‍👦: eine Familie. Kodiert, indem Sie sich beim Emoji für Jungen, Mädchen, Frauen und Männer (👦, 👧, 👩, 👨) zusammen mit Zero-Width-Schreiner ( U+200D 200D) anmelden. Auf Plattformen, die dies unterstützen, wird dies als Emoji einer Familie mit zwei Kindern dargestellt.


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow