Unicode-Sonderzeichen für Normalisierung
Unicode enthält Zeichen, die wie gewöhnliche Buchstaben aussehen oder sich beim Normalisieren verändern, etwa das Kelvin-Zeichen, Ligaturen, hochgestellte Ziffern und typografische Anführungszeichen. Die Beispiele zeigen diese Sonderformen, dazu ß in Groß- und Kleinschreibung und Zeichen, die in UTF-16 zwei Einheiten belegen. Sie dienen dazu, Normalisierung, Case-Folding und Längenzählung zu prüfen.
17 Varianten auf einer Seite, jede mit eigenem Kopier- oder Download-Knopf.
Satz mit allen Umlauten
Zwölf Boxkämpfer jagen Viktor quer über den großen Sylter Deich.
Deutscher Pangramm-Satz mit ä, ö, ü und ß. Testzeichenfolge für eigene Systeme.
Großes Eszett (ẞ, U+1E9E)
STRAẞE
Seit 2017 amtlich zulässiger Großbuchstabe; viele Schriften und Datenbanken kennen ihn nicht. UTF-16: 6, Codepoints: 6, UTF-8: 8 Bytes. Testzeichenfolge für eigene Systeme.
Straße und STRASSE (Groß-/Kleinschreibung mit ß)
Straße STRASSE strasse
toUpperCase() macht aus ß zwei Buchstaben (SS); Vergleiche ohne Case-Folding schlagen fehl. UTF-16: 22, Codepoints: 22, UTF-8: 23 Bytes. Testzeichenfolge für eigene Systeme.
Å als Ångström-Zeichen (U+212B) und als Å (U+00C5)
Å|Å
Beide sehen gleich aus; U+212B normalisiert zu U+00C5 (Singleton-Zerlegung). UTF-16: 3, Codepoints: 3, UTF-8: 6 Bytes. Testzeichenfolge für eigene Systeme.
Kelvin-Zeichen K (U+212A) neben K
K K
U+212A sieht aus wie ein lateinisches K und wird bei NFKC/NFC zu K. UTF-16: 3, Codepoints: 3, UTF-8: 5 Bytes. Testzeichenfolge für eigene Systeme.
Vollbreite Zeichen: ABC abc 123
ABC abc 123
Fullwidth-Formen aus dem Block Halfwidth and Fullwidth Forms; NFKC macht daraus ASCII. UTF-16: 11, Codepoints: 11, UTF-8: 29 Bytes. Testzeichenfolge für eigene Systeme.
Hochgestellte Ziffern und Bruch: m² m³ ½
m² m³ ½
Zeichen, die NFKC in normale Ziffern bzw. 1⁄2 umwandelt. UTF-16: 7, Codepoints: 7, UTF-8: 10 Bytes. Testzeichenfolge für eigene Systeme.
Römische Ziffer Ⅷ als ein Zeichen (U+2167)
Ⅷ
Ein Codepoint; NFKC ergibt die Buchstaben VIII. UTF-16: 1, Codepoints: 1, UTF-8: 3 Bytes. Testzeichenfolge für eigene Systeme.
Ligaturen: fi fl ffi æ œ
fi fl ffi æ œ
fi, fl, ffi sind Präsentationsformen (NFKC: fi, fl, ffi), æ und œ eigene Buchstaben. UTF-16: 9, Codepoints: 9, UTF-8: 17 Bytes. Testzeichenfolge für eigene Systeme.
Viele Combining Marks auf einem Buchstaben
Z͑ͫ̓ͪ̂ͫ̽͏̴̙̤̞͉͚̯̞̠͍A̴̵̜̰͔ͫ͗͢
Gestapelte Kombinationszeichen („Zalgo“) sprengen Zeilenhöhen und Längenprüfungen. UTF-16: 28, Codepoints: 28, UTF-8: 54 Bytes. Testzeichenfolge für eigene Systeme.
Mathematische Fettschrift 𝐀𝐁𝐂 (außerhalb der BMP)
𝐀𝐁𝐂
Zeichen aus der Ebene U+1D400 benötigen in UTF-16 zwei Einheiten (Surrogatpaar) und vier Bytes in UTF-8. UTF-16: 6, Codepoints: 3, UTF-8: 12 Bytes. Testzeichenfolge für eigene Systeme.
Gleich aussehende Zeichen: l I 1 | O 0
l I 1 | O 0 o
Verwechslungsgefahr bei Passwörtern und Seriennummern. Testzeichenfolge für eigene Systeme.
Typografische Anführungszeichen und Apostroph
„Deutsch“ “English” »Franz« ’ ‘ ‚
Anführungszeichen statt ASCII " und '; Apostroph U+2019 statt U+0027. UTF-16: 33, Codepoints: 33, UTF-8: 49 Bytes. Testzeichenfolge für eigene Systeme.
Bindestrich, Gedankenstrich, Minus
a-b a–b a—b a−b a‐b
U+002D, U+2013, U+2014, U+2212 und U+2010 sehen ähnlich aus, sind aber verschiedene Zeichen. UTF-16: 19, Codepoints: 19, UTF-8: 27 Bytes. Testzeichenfolge für eigene Systeme.
Auslassungspunkte … als ein Zeichen
Wait…
U+2026 ist ein Zeichen; drei ASCII-Punkte sind drei. UTF-16: 5, Codepoints: 5, UTF-8: 7 Bytes. Testzeichenfolge für eigene Systeme.
Ideografisches Leerzeichen (U+3000)
A B
Voll breites Leerzeichen aus ostasiatischen Eingaben. UTF-16: 3, Codepoints: 3, UTF-8: 5 Bytes. Testzeichenfolge für eigene Systeme.
Verschiedene Leerzeichen in einer Zeile
a b c d e f g h
U+0020, 00A0, 2002, 2003, 2009, 200A, 3000 zwischen den Buchstaben a bis h. UTF-16: 15, Codepoints: 15, UTF-8: 26 Bytes. Testzeichenfolge für eigene Systeme.