Ohne Breite und unsichtbar
ZERO WIDTH NO-BREAK SPACE (U+FEFF)
Das Byte Order Mark, U+FEFF, das Editoren und Fehlermeldungen meist als ufeff schreiben. Ganz am Anfang einer Datei kündigt es die Kodierung an; überall sonst ist es ein unsichtbares, umbruchverbietendes Nichts, von dem Unicode seit Version 3.2 abrät.
- Codepoint
U+FEFF- Auch geschrieben als
ufeff\ufeff- Kategorie
- Ohne Breite und unsichtbar
- Standardmäßig entfernt
- Ja
- Zuständige Option
- Keine Option nötig
- Kann tragend sein
- Nein
U+FEFF kopieren und einfügen
So kopierst du ZERO WIDTH NO-BREAK SPACE (U+FEFF) und fügst es ein: Drück den Button, dann liegt das Zeichen selbst in deiner Zwischenablage, und Strg+V (Cmd+V auf dem Mac) fügt es überall ein, wo du tippen kannst.
Woher es kommt
Windows-Editoren, Excel-Exporte und alles, was »UTF-8 mit BOM« schreibt. Hängt man mehrere solcher Dateien aneinander, steht mitten im Ergebnis ein BOM. Es kommt auch beim Einfügen mit: Kopierst du eine Tabellenzelle, eine Zeile aus einem Editor oder den Inhalt eines Webformulars, kann der Text mit einem unsichtbaren Zeichen beginnen, das Suchfeld sieht dabei völlig normal aus, und die Suche findet trotzdem nichts.
Warum es zählt
Ein BOM am Anfang bringt JSON-Parser, YAML-Kopfdaten, Shebang-Zeilen und CSV-Kopfzeilen zu Fall; ein BOM mitten im Text ist schlicht ein unsichtbares Zeichen, an dem jeder exakte Vergleich scheitert. Es ist auch der Grund, warum eine Konfigurationsdatei »völlig in Ordnung aussieht« und trotzdem nicht lädt.
Vorher und nachher
Das unsichtbare erste Zeichen ist der Grund, warum `JSON.parse` diese Zeichenkette ablehnt.
Das Zeichen wird als beschriftete Marke dargestellt, damit du siehst, wo es sitzt. In deinem Text zeichnet es überhaupt nichts.
Wann es berechtigt ist
Als allererstes Zeichen einer Datei, als Kodierungssignatur, und das ist eine Eigenschaft der DATEI, nicht des Textes. Sobald der Text in einem Eingabefeld liegt, gibt es kein berechtigtes BOM mehr.
So entfernst du es
Die Voreinstellung entfernt es, egal wo es steht. Ghostchars arbeitet auf Text, also behandelt es auch das führende BOM als Text.
Steckt der Text in einer Datei statt in der Zwischenablage? Der Dokumentbericht für .docx, .odt und .html findet das Zeichen in der Datei, zusammen mit ausgeblendeten Textabschnitten und nachverfolgten Änderungen, ohne dass du sie öffnen musst. Wenn es um den übrigen Text statt um dieses eine Zeichen geht, kannst du die Streuung der Satzlängen messen und sehen, wo jede Gewohnheit auftritt, ohne Punktzahl und ohne Aussage darüber, wer den Text geschrieben hat.
Ist das ein KI-Wasserzeichen?
Kein Wasserzeichen
Nein. Ein BOM ist ein Kodierungsartefakt aus Editoren und Export-Pipelines. Es sagt etwas über das Programm aus, das die Datei gespeichert hat, und nichts darüber, wer die Wörter geschrieben hat.
Keine Verbindung zu maschinell erzeugtem Text. Es kommt aus einer Software, von einer Tastatur oder von einem Menschen.
Fragen
Warum beginnt der eingefügte Text mit einem unsichtbaren Zeichen?
Fast immer ist es ein BOM, das beim Kopieren mitgereist ist: Die Quelle hat U+FEFF vorangestellt, und es ist mit allen sichtbaren Zeichen dahinter mitgekommen. Die Voreinstellung entfernt es. Wenn du es vorher sehen willst, füge den Text hier ein und schalte auf »Verstecktes zeigen«: Dort wird das ufeff vor dem ersten Buchstaben markiert.
Warum lässt sich mein JSON nicht parsen?
Ein führendes BOM ist ein Zeichen vor der öffnenden Klammer. Die meisten JSON-Parser lehnen es als unerwartetes Token ab, und die Fehlermeldung zeigt auf Position 0, wo nichts zu sehen ist.
Ist das dasselbe wie ein Wortverbinder?
Mitten im Text verhalten sich beide gleich. Unicode rät von U+FEFF in dieser Rolle ab und hat U+2060 WORD JOINER zum richtigen Zeichen erklärt; U+FEFF ist seither nur noch das Byte Order Mark.
Prüf deinen eigenen Text
Füg irgendetwas in den Textreiniger ein und sieh jedes unsichtbare Zeichen darin: mit Position, Codepoint und dem, was mit jedem einzelnen passiert. Nichts wird hochgeladen.
Prüf deinen eigenen TextIn Chrome schon beim Einfügen säubernAuf dem Mac mit einem Tastenkürzel säubernAlle Zeichen