Wie man JSON Strings in Python, JavaScript und Java unescaped
Emily Parker
Product Engineer · Leapcell

Key Takeaways
- Integrierte JSON-Parser in Python, JavaScript und Java dekodieren Strings automatisch.
- Nicht-JSON-Strings mit Escape-Zeichen erfordern spezifische Dekodierungsmethoden.
- Online-Tools können bei der schnellen Dekodierung ohne Code helfen.
Bei der Arbeit mit JSON-Daten ist es üblich, auf Strings zu stoßen, die Escape-Sequenzen wie \"
, \\
, \n
und \t
enthalten. Diese Sequenzen stellen sicher, dass Sonderzeichen innerhalb von JSON-Strings korrekt dargestellt werden. Bei der Verarbeitung oder Anzeige dieser Daten müssen Sie diese Escape-Sequenzen jedoch häufig wieder in ihre ursprüngliche Form konvertieren – ein Vorgang, der als "Unescaping" bezeichnet wird.
Dieser Leitfaden untersucht, wie man JSON-Strings in Python, JavaScript und Java unescaped.
Was ist JSON-Unescaping?
JSON-Unescaping beinhaltet die Konvertierung von escaped Zeichen in einem JSON-String zurück in ihre ursprüngliche Form. Zum Beispiel:
- Escaped: `"Sie sagte: "Hallo!""
- Unescaped:
Sie sagte: "Hallo!"
Dieser Prozess ist wichtig für die korrekte Interpretation und Anzeige von JSON-Daten.
Python: Unescaping von JSON-Strings
Verwendung von json.loads()
Das integrierte json
-Modul von Python übernimmt das Unescaping automatisch beim Parsen von JSON-Strings.
import json escaped_json = '{"message": "Hallo, \"Welt\"!\nDies ist ein Backslash: \\\"}' data = json.loads(escaped_json) print(data["message"])
Ausgabe:
Hallo, "Welt"!
Dies ist ein Backslash: \
In diesem Beispiel parst json.loads()
den JSON-String und entfernt automatisch die Escape-Zeichen.
Verwendung von encode()
und decode()
Für Strings, die nicht strikt JSON sind, aber Escape-Sequenzen enthalten, können Sie Encoding- und Decoding-Methoden verwenden:
escaped_string = 'Zeile1\nZeile2\nZeile3' unescaped_string = escaped_string.encode('utf-8').decode('unicode_escape') print(unescaped_string)
Ausgabe:
Zeile1
Zeile2
Zeile3
Dieser Ansatz ist nützlich, wenn Sie mit Strings arbeiten, die Escape-Sequenzen enthalten, aber nicht im JSON-Format vorliegen.
JavaScript: Unescaping von JSON-Strings
Verwendung von JSON.parse()
In JavaScript entfernt JSON.parse()
automatisch Escape-Zeichen beim Parsen von JSON-Daten:
const escapedJson = '{"message": "Hallo, \"Welt\"!\nDies ist ein Backslash: \\\"}'; const data = JSON.parse(escapedJson); console.log(data.message);
Ausgabe:
Hallo, "Welt"!
Dies ist ein Backslash: \
Hier parst JSON.parse()
den JSON-String und entfernt die Escape-Zeichen.
Hinweis zu unescape()
Die Funktion unescape()
in JavaScript ist veraltet und sollte vermieden werden. Verwenden Sie stattdessen decodeURIComponent()
oder JSON.parse()
zum Unescaping.
Java: Unescaping von JSON-Strings
Verwendung von ObjectMapper
von Jackson
In Java kann die ObjectMapper
-Klasse der Jackson-Bibliothek JSON-Strings parsen und automatisch entescapen:
import com.fasterxml.jackson.databind.ObjectMapper; public class Main { public static void main(String[] args) throws Exception { String escapedJson = "{\"message\": \"Hallo, \\\"Welt\\\"!\\nDies ist ein Backslash: \\\\\\"}"; ObjectMapper mapper = new ObjectMapper(); MyData data = mapper.readValue(escapedJson, MyData.class); System.out.println(data.getMessage()); } } class MyData { private String message; public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }
Ausgabe:
Hallo, "Welt"!
Dies ist ein Backslash: \
In diesem Beispiel parst ObjectMapper
den JSON-String und entfernt die Escape-Zeichen.
Verwendung von StringEscapeUtils
von Apache Commons Text
Alternativ können Sie StringEscapeUtils
aus der Apache Commons Text-Bibliothek verwenden:
import org.apache.commons.text.StringEscapeUtils; public class Main { public static void main(String[] args) { String escapedString = "Hallo, \\\"Welt\\\"!\\nDies ist ein Backslash: \\\\"; String unescapedString = StringEscapeUtils.unescapeJson(escapedString); System.out.println(unescapedString); } }
Ausgabe:
Hallo, "Welt"!
Dies ist ein Backslash: \
Diese Methode ist nützlich zum Entescapen von JSON-Strings außerhalb des Kontexts der vollständigen JSON-Analyse.
Online-Tools zum Unescaping von JSON
Wenn Sie es vorziehen, keinen Code zu schreiben, können mehrere Online-Tools JSON-Strings unescapen:
- FreeFormatter: https://www.freeformatter.com/json-escape.html
- LambdaTest: https://www.lambdatest.com/free-online-tools/json-unescape
Mit diesen Tools können Sie escaped JSON-Strings einfügen und sofort die unescaped Version erhalten.
Schlussfolgerung
Das Unescaping von JSON-Strings ist eine gängige Aufgabe bei der Verarbeitung von Daten aus verschiedenen Quellen. Die meisten modernen Programmiersprachen bieten integrierte Methoden oder Bibliotheken, um diesen Prozess effizient zu handhaben. Durch das Verständnis und die Verwendung dieser Tools können Sie sicherstellen, dass Ihre Anwendungen JSON-Daten korrekt interpretieren und anzeigen.
FAQs
Es bedeutet, Escape-Sequenzen (z. B. \n
, \"
) wieder in ihre ursprünglichen Zeichen zu konvertieren.
Ja, indem Sie Dekodierungsfunktionen wie decode('unicode_escape')
in Python oder Apache Commons in Java verwenden.
Ja, Websites wie FreeFormatter und LambdaTest bieten diese Funktionalität.
Wir sind Leapcell, Ihre erste Wahl für das Hosten von Backend-Projekten.
Leapcell ist die Next-Gen Serverless-Plattform für Webhosting, asynchrone Aufgaben und Redis:
Multi-Sprachen-Unterstützung
- Entwickeln Sie mit Node.js, Python, Go oder Rust.
Stellen Sie unbegrenzt viele Projekte kostenlos bereit
- zahlen Sie nur für die Nutzung – keine Anfragen, keine Gebühren.
Unschlagbare Kosteneffizienz
- Pay-as-you-go ohne Leerlaufgebühren.
- Beispiel: 25 US-Dollar unterstützen 6,94 Millionen Anfragen bei einer durchschnittlichen Antwortzeit von 60 ms.
Optimierte Entwicklererfahrung
- Intuitive Benutzeroberfläche für mühelose Einrichtung.
- Vollständig automatisierte CI/CD-Pipelines und GitOps-Integration.
- Echtzeitmetriken und -protokollierung für umsetzbare Erkenntnisse.
Mühelose Skalierbarkeit und hohe Leistung
- Automatische Skalierung zur einfachen Bewältigung hoher Parallelität.
- Kein operativer Aufwand – konzentrieren Sie sich einfach auf den Aufbau.
Erfahren Sie mehr in der Dokumentation!
Folgen Sie uns auf X: @LeapcellHQ