BrowserTools
Werbung
Startseite / Encoder / Escape- und Unescape-Werkzeug

Escape- und Unescape-Werkzeug

Escape oder Unescape von Text für HTML, XML, JSON, JavaScript, CSV und URLs, lokal in deinem Browser.

Escape- und Unescape-Werkzeug wird geladen… Wenn nichts passiert, aktiviere JavaScript.

Escaping bedeutet, Zeichen umzuschreiben, die in einem bestimmten Format eine besondere Bedeutung haben, damit sie als reine Daten und nicht als Syntax behandelt werden. Dieses Werkzeug escaped und unescaped Text für sechs gängige Kontexte: HTML, XML, JSON-Zeichenketten, JavaScript-Zeichenketten, CSV-Felder und URLs. Wähle den Kontext, entscheide dich für Escape oder Unescape, und das Ergebnis aktualisiert sich während der Eingabe.

Häufig gestellte Fragen

Was ist hier der Unterschied zwischen HTML- und XML-Escaping?
Sie sind fast identisch: Beide wandeln &, <, >, " und ' in Entitäten um. Der wichtigste praktische Unterschied ist das Apostroph, das XML als &apos; schreibt, während HTML für eine breitere Kompatibilität oft &#39; verwendet. Beim Unescaping werden benannte Entitäten sowie dezimale (&#39;) und hexadezimale (&#x27;) Formen verarbeitet.
Warum sehen JSON- und JavaScript-String-Escaping gleich aus?
Weil die String-Syntax von JSON eine strikte Teilmenge der von JavaScript ist. Beide escapen doppelte Anführungszeichen, Backslashes und Steuerzeichen wie Zeilenumbrüche (\n) und Tabulatoren (\t). Das Werkzeug erzeugt den inneren Inhalt eines String-Literals ohne die umgebenden Anführungszeichen, sodass du ihn direkt in deinen Code oder deine Daten einfügen kannst.
Wie funktioniert das CSV-Escaping?
Ein CSV-Feld muss nur dann in Anführungszeichen gesetzt werden, wenn es ein Komma, ein doppeltes Anführungszeichen oder einen Zeilenumbruch enthält. In diesem Fall wird das Feld mit doppelten Anführungszeichen umschlossen und jedes darin enthaltene doppelte Anführungszeichen verdoppelt (" wird zu ""). Felder ohne diese Zeichen bleiben unverändert, was der RFC 4180 entspricht.
Kodiert der URL-Modus die gesamte URL oder nur eine Komponente?
Er verwendet die Komponentenkodierung (das Äquivalent zu encodeURIComponent), die reservierte Zeichen wie /, ?, & und = prozentual kodiert. Das ist die richtige Wahl für einen einzelnen Query-String-Wert oder ein Pfadsegment. Um eine vollständige URL mit erhaltener Struktur zu bearbeiten, verwende das eigene URL-Encoder-Werkzeug.
Ist Escaping dasselbe wie Verschlüsselung?
Nein. Escaping ändert nur, wie Zeichen dargestellt werden, damit ein Parser sie als Daten liest, und jeder kann es sofort rückgängig machen. Es bietet keine Geheimhaltung. Für Vertraulichkeit brauchst du echte Verschlüsselung, kein Escaping oder Kodieren.
Wird meine Eingabe irgendwohin hochgeladen?
Nein. Das gesamte Escaping und Unescaping erfolgt lokal in deinem Browser, sodass Payloads, Tokens und exportierte Daten dein Gerät nie verlassen.

Über Escape- und Unescape-Werkzeug

Wichtig ist das aus Gründen der Sicherheit und Korrektheit. Eine nicht escapte spitze Klammer in HTML kann die Seite zerstören oder eine Cross-Site-Scripting-Lücke öffnen; ein nicht escaptes Anführungszeichen in einer JSON-Zeichenkette führt dazu, dass das gesamte Dokument nicht geparst werden kann; ein Komma in einem CSV-Feld verschiebt alle nachfolgenden Spalten. Jedes Format hat seine eigenen Regeln: HTML und XML verwenden Entitäten wie &lt; und &amp;, JSON und JavaScript verwenden Backslash-Sequenzen wie \" und \n, CSV umschließt ein Feld mit doppelten Anführungszeichen und verdoppelt jedes innere Anführungszeichen, und URLs kodieren reservierte Zeichen prozentual in Formen wie %20.

Alles läuft lokal in deinem Browser, sodass du API-Payloads, Codeschnipsel und exportierte Daten einfügen kannst, ohne dass sie dein Gerät verlassen. Die Richtungen Escape und Unescape sind für wohlgeformte Eingaben exakte Umkehrungen, und mit der Schaltfläche „Ausgabe als Eingabe verwenden“ kannst du eine Transformation mit einem Klick verketten oder umkehren.

Das Escape-Zeichen

Die Idee eines „Escape-Zeichens“, eines Symbols, das die Bedeutung des nachfolgenden ändert, ist alt genug, um der modernen Informatik vorauszugehen. Der ASCII-Steuercode 27, der noch immer von der Escape-Taste gesendet wird, wurde von Terminals verwendet, um Steuersequenzen einzuleiten, und der Backslash wurde von der Programmiersprache C in den frühen 1970er-Jahren übernommen, um Anführungszeichen und Zeilenumbrüche in String-Literale einzubetten. Diese Backslash-Konvention verbreitete sich auf fast jede nachfolgende Sprache, weshalb das Escaping in JSON und JavaScript so vertraut wirkt.

Das Web fügte seine eigene Schicht hinzu. HTML erbte die Ampersand-Entitäten von SGML, damit Autoren ein wörtliches Kleiner-als-Zeichen schreiben konnten, ohne ein Tag zu beginnen, und die prozentuale URL-Kodierung wurde definiert, damit Adressen sicher durch Systeme reisen konnten, die nur einen begrenzten Satz von ASCII-Zeichen verstanden. Jedes Schema löst dasselbe zugrunde liegende Problem in einem anderen Gewand: wie man sagt „behandle dieses Zeichen als Daten, nicht als Anweisung“.

Werbung
Werbung
Werbung