Zum Inhalt springen

Unicode normalisieren

Unicode Normaliser

Wendet NFC, NFD, NFKC oder NFKD an – die Lösung für Text von macOS, der richtig aussieht, aber nie übereinstimmt.

Wandelt Text zwischen den vier Unicode-Normalformen um und zeigt, was jede verändert, in Codepunkten und in Bytes. Der praktische Fall im Deutschen sind die Umlaute: Ein auf dem Mac getipptes „Müller“ ist zerlegt gespeichert und wird als ungleich mit demselben Namen verglichen, der unter Windows getippt wurde, und deshalb findet eine Suche oder ein SVERWEIS nichts.

🔒 Läuft vollständig in Ihrem Browserunicodenormalizenfckorean

Text

Form

Zusammengesetzt. Das, was das Web, Windows und so gut wie jede Datenbank erwarten. Fangen Sie hier an.

Nichts verlässt diesen Tab. Die Normalisierung läuft bei jedem Tastendruck, und die vier Formen werden gemeinsam berechnet, damit Sie sie vergleichen können.

Dieser Text enthält 6 getrennte Hangul-Jamo.

Das ist die Dateinamensform von macOS. Sie wird als normales Koreanisch dargestellt, vergleicht sich aber ungleich zu demselben unter Windows getippten Text – deshalb findet eine Suche oder ein SVERWEIS nichts. NFC setzt die Silben wieder zusammen.

NFC-Ausgabe

Alle vier Formen

FormÄndert etwasCodepunkteUTF-8-BytesUmkehrbar
NFCja, ab Codepunkt 02246ja
NFDja, ab Codepunkt 73789ja
NFKCja, ab Codepunkt 02444nein
NFKDja, ab Codepunkt 74090nein

Die Byte-Spalte ist die praktisch wichtige: zerlegtes Koreanisch kostet neun UTF-8-Bytes je Silbe, zusammengesetztes drei. Genau so besteht ein Name auf dem einen Rechner die Längenprüfung und fällt auf dem anderen durch.

Was NFC geändert hat

  • bei 0한글한글Codepunkte: 6 → 2

So funktioniert es

  1. Fügen Sie den Text ein, der nicht passt

    Enthält er getrennte Hangul-Jamo, sagt eine Warnung das mit Anzahl, bevor Sie irgendetwas anderes tun. Diese Warnung zählt nur Hangul: Ein zerlegtes ä erscheint nicht darin, wohl aber in der Vergleichstabelle darunter, wo NFC den Text verändern wird und NFD nicht.

  2. Verwenden Sie NFC, wenn Sie es nicht besser wissen

    NFC ist die zusammengesetzte Form, die das Web, Windows und jede Datenbank erwarten. NFD ist das, worin macOS Dateinamen speichert. NFKC ist ein Suchschlüssel, kein Anzeigetext.

  3. Vergleichen Sie alle vier, bevor Sie entscheiden

    Die Tabelle zeigt, welche Formen Ihren Text überhaupt verändern, was es in Codepunkten und UTF-8-Bytes kostet und ob sich die Änderung rückgängig machen lässt.

Häufige Fragen

Warum passt mein Name mit Umlaut in Excel nicht?

Eine Seite ist zerlegt und die andere zusammengesetzt. Sie werden identisch dargestellt und sind verschiedene Bytefolgen, eine Suche nach exakter Übereinstimmung schlägt also fehl. Normalisieren Sie beide Seiten zu NFC, und sie passen.

Ist NFKC überall sicher?

Nein – es ist eine Einbahnstraße. ㈜ wird zu (주), ① zu 1, A zu A, fi zu fi, und nichts davon lässt sich zurückdrehen. Verwenden Sie es für einen Suchschlüssel oder einen Vergleich, nicht für Text, den Sie speichern und anzeigen werden.

Fügt NFC mein ㄱ und ㅏ zu 가 zusammen?

Nein. Das sind Kompatibilitäts-Jamo – die Einzelbuchstaben einer Tastaturtabelle –, und sie sind eigene Zeichen, nicht die verbindenden Jamo, aus denen eine Silbe besteht. Nur NFKC rührt sie an, indem es sie auf den verbindenden Block abbildet.

Warum ist die Bytezahl wichtig?

Ein zerlegtes ä kostet drei UTF-8-Bytes, ein zusammengesetztes zwei; eine zerlegte Hangul-Silbe kostet neun, eine zusammengesetzte drei. So besteht ein Name eine Längenprüfung auf einem Rechner und fällt auf einem anderen durch, ohne sichtbaren Unterschied zwischen beiden.

Eingabe aus

Danach

Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.