Skip to content

Unescape JSON (usuwanie ucieczek)

Odescape'uj napis JSON z powrotem na czytelny tekst w przeglądarce. Dekoduje \n, \t, \", \\ i \uXXXX, z otaczającymi cudzysłowami lub bez. W 100% prywatnie, bez wysyłania.

Bez śledzenia Działa w przeglądarce Bezpłatne
0 znaki
Zdekodowany tekst
0 znaki
Sprawdzone pod kątem dekodowania zgodnego ze specyfikacją JSON, parsowania z opcjonalnymi cudzysłowami, rekonstrukcji par surogatów oraz obsługi błędów zniekształconych danych wejściowych — Zespół inżynierów Go Tools · Jun 10, 2026

Czym jest unescape'owanie JSON?

Unescape'owanie JSON jest odwrotnością escape'owania JSON: przyjmuje napis pełen sekwencji ucieczki — \n, \t, \", \\, \uXXXX — i zamienia każdą z nich z powrotem na reprezentowany znak, odzyskując oryginalny tekst. Gdy escape'owanie czyni napis bezpiecznym do przechowania wewnątrz dokumentu JSON, unescape'owanie czyni przechowany napis ponownie czytelnym.

Potrzeba pojawia się stale w debugowaniu i pracy z danymi. Kopiujesz pole ze strukturalnego logu, a jest ono pełne \n i \", które ukrywają prawdziwą wiadomość — unescape ujawnia faktyczny wieloliniowy tekst. API przechowało treść żądania jako napis (JSON-in-JSON), a Ty musisz odczytać wewnętrzny obiekt — unescape zamienia {\"a\":1} z powrotem na {"a":1}. Starszy system wyemitował wynik bezpieczny dla ASCII, w którym każdy akcent stał się \uXXXX — unescape przywraca café i résumé. W każdym przypadku dane są technicznie nienaruszone, ale nieczytelne, dopóki nie zostaną zdekodowane.

To narzędzie jest zbudowane do tej ścieżki dekodowania i ma trzy zalety. Po pierwsze, jest pobłażliwe wobec otaczających cudzysłowów: wklej pełny literał lub samą escape'owaną treść, a zrobi właściwą rzecz — ponieważ escape'owane napisy są zwykle kopiowane poza kontekstem. Po drugie, poprawnie dekoduje \uXXXX, łącząc pary surogatów we właściwe znaki astralne, jak emoji, identycznie jak zgodny parser JSON, więc cokolwiek escape'owane przez serializator wraca idealnie. Po trzecie, działa w 100% w Twojej przeglądarce, więc pola logów i ładunki, które dekodujesz — często zawierające dane osobowe lub sekrety — nigdy nie docierają do serwera. Aby ponownie escape'ować, użyj naszego narzędzia Escape JSON; aby zweryfikować zdekodowany JSON, zobacz Formatowanie JSON.

// Escaped input (copied from a log, quotes optional)
User said: \"it works!\"\nSession ended.

// Unescaped output — readable again
User said: "it works!"
Session ended.

// \uXXXX and surrogate pairs decode too
caf\u00e9 \ud83d\ude00  ->  café 😀

// JSON-in-JSON
{\"a\":1}  ->  {"a":1}

Kluczowe funkcje

Pełne dekodowanie sekwencji JSON

Dekoduje kompletny zestaw sekwencji ucieczki JSON — \n \r \t \b \f \" \\ \/ i \uXXXX — z powrotem na prawdziwe znaki, identycznie jak zgodny parser JSON. Cokolwiek serializator escape'ował, wraca bajt po bajcie.

Cudzysłowy opcjonalne

Wklej pełny literał napisu z otaczającymi cudzysłowami lub samą escape'owaną treść bez nich — narzędzie wykrywa, co to jest, i poprawnie dekoduje. Idealne dla napisów skopiowanych ze środka logu lub dokumentu.

Poprawny Unicode i emoji

Sekwencje \uXXXX dekodują się na swoje znaki Unicode, a kolejne sekwencje surogatów łączą się we właściwy znak astralny — \ud83d\ude00 staje się 😀, \u00e9 staje się é. Żadnych zniekształconych punktów kodowych.

Jasne raportowanie błędów

Zniekształcone dane wejściowe — pojedynczy odwrotny ukośnik przed nierozpoznanym znakiem lub niezbalansowany cudzysłów — wywołują wyraźny baner błędu zamiast po cichu produkować śmieci, więc dokładnie wiesz, co poprawić.

Zamiana do weryfikacji konwersji w obie strony

Jeden przycisk Zamień kierunek przełącza w tryb escape w miejscu i ponownie koduje zdekodowany tekst, pozwalając Ci potwierdzić, że unescape → escape zwraca oryginalny napis, zanim zaufasz wynikowi.

Prywatność w 100% w przeglądarce

Całe dekodowanie działa po stronie klienta — pola logów i ładunki, które odescape'owujesz (często zawierające dane osobowe lub sekrety), nigdy nie opuszczają przeglądarki. Sprawdź to w karcie Sieć: zero żądań przy wklejaniu.

Przykłady

Escape'owany napis skopiowany z logu

"User said: \"it works!\"\nSession ended."

Pole logu escape'owane w JSON z \" i \n. Odescape'uj je, aby odczytać prawdziwą dwuwierszową wiadomość z faktycznymi cudzysłowami — dokładnie to, co zostało zalogowane.

Odczyt ładunku JSON-in-JSON

{\"event\":\"signup\",\"user\":{\"id\":42}}

Wewnętrzny obiekt JSON przechowywany jako escape'owany napis. Unescape ujawnia prawdziwy JSON, więc możesz go odczytać lub ponownie sparsować. Otaczające cudzysłowy nie są potrzebne — są dodawane automatycznie.

Dekodowanie sekwencji Unicode \uXXXX

caf\u00e9 \ud83d\ude00 r\u00e9sum\u00e9

Sekwencje bezpieczne dla ASCII ze starszego systemu. Unescape zamienia \u00e9 z powrotem na é, a parę surogatów \ud83d\ude00 z powrotem na 😀.

Przywrócenie wieloliniowego fragmentu

function greet(name) {\n  return \"Hi \" + name;\n}

Fragment kodu spłaszczony do pojedynczego napisu JSON. Unescape przywraca prawdziwe znaki nowej linii, więc znów jest czytelny i wykonywalny.

Jak używać

  1. 1

    Wklej escape'owany napis

    Wpisz lub wklej escape'owany napis JSON — z otaczającymi podwójnymi cudzysłowami lub bez nich. Zdekodowany tekst pojawia się natychmiast. Kliknij „Wczytaj przykład”, aby wypróbować próbkę, np. escape'owany wiersz logu lub napis zakodowany w \uXXXX.

  2. 2

    Odczytaj zdekodowany wynik

    Sekwencje ucieczki stają się prawdziwymi znakami: \n zamienia się w podziały wierszy, \" w cudzysłowy, a \uXXXX w Unicode. Jeśli dane wejściowe są zniekształcone, baner błędu wyjaśnia problem, abyś mógł poprawić błędny odwrotny ukośnik.

  3. 3

    Skopiuj lub zweryfikuj wynik

    Kliknij Kopiuj, aby pobrać czytelny tekst, lub wyślij go do Formatowania JSON, aby zweryfikować. Kliknij Zamień kierunek, aby ponownie escape'ować go w miejscu i potwierdzić, że konwersja w obie strony zgadza się z Twoim oryginałem.

Częste pułapki dekodowania

Nieprawidłowa sekwencja jak \q lub \x41

JSON rozpoznaje tylko \n \r \t \b \f \" \\ \/ i \uXXXX. Odwrotny ukośnik przed czymkolwiek innym — \q lub \x41 w stylu C — nie jest poprawną sekwencją ucieczki i dekodowanie zawodzi. Zamień \x41 na \u0041 i usuń błędne odwrotne ukośniki, które miały być dosłowne (dosłowny odwrotny ukośnik musi być zapisany jako \\).

✗ Niepoprawne
value: \q and \x41
// \q and \x hex are not valid JSON escapes -> error
✓ Poprawne
value: \\q and \u0041
// literal backslash doubled; hex written as \u -> decodes

Niezbalansowane cudzysłowy w wejściu bez ucieczek

Gdy wklejasz nagą treść (bez zewnętrznych cudzysłowów), narzędzie owija ją w cudzysłowy przed dekodowaniem. Jeśli sama treść zawiera nieescape'owany podwójny cudzysłów, owijanie się psuje i dekodowanie zawodzi. Escape'uj wewnętrzne cudzysłowy jako \" lub wklej zamiast tego pełny literał w cudzysłowach.

✗ Niepoprawne
say "hi" there
// interior unescaped " breaks auto-wrapping -> error
✓ Poprawne
say \"hi\" there
// interior quotes escaped -> decodes to: say "hi" there

Oczekiwanie dosłownego odwrotnego ukośnika, który nie został podwojony

Pojedynczy odwrotny ukośnik w danych wejściowych jest interpretowany jako początek sekwencji ucieczki. Jeśli faktycznie chciałeś dosłownego odwrotnego ukośnika (np. ścieżki Windows), musi pojawić się podwojony jako \\. Samotny \ przed zwykłą literą wywołuje błąd nieprawidłowej sekwencji ucieczki.

✗ Niepoprawne
path: C:\Users\Alice
// \U and \A are invalid escapes -> error
✓ Poprawne
path: C:\\Users\\Alice
// doubled backslashes -> decodes to C:\Users\Alice

Częste zastosowania

Dekodowanie strukturalnych pól logów
Skopiuj pole wiadomości pełne \n i \" z wiersza logu JSON i odescape'uj je, aby odczytać prawdziwą wieloliniową wiadomość dokładnie tak, jak została wyemitowana, zamiast mrużyć oczy przy sekwencjach ucieczki.
Odczyt ładunków JSON-in-JSON
Zamień wewnętrzny obiekt JSON przechowywany jako escape'owane pole napisu z powrotem na prawdziwy JSON, abyś mógł go odczytać lub wkleić do parsera — częste w kopertach webhooków i logach audytu.
Przywracanie Unicode z wyniku bezpiecznego dla ASCII
Zdekoduj wynik gęsty od \uXXXX ze starszego systemu z powrotem na litery z akcentami, znaki CJK i emoji, odzyskując czytelną dla człowieka formę danych, które wymuszono do czystego ASCII.
Rozpłaszczanie fragmentów kodu
Zamień skrypt lub zapytanie zwinięte w pojedynczy napis JSON (każda nowa linia jako \n) z powrotem na prawidłowo sformatowany, wieloliniowy, czytelny kod.
Debugowanie danych zakodowanych podwójnie
Gdy wartość wygląda jak \\n lub \\\", odescape'uj raz, aby sprawdzić, czy nie została przypadkowo escape'owana dwukrotnie wcześniej w potoku, a następnie popraw producenta — częsty błąd integracji.
Inspekcja komunikatów błędów API
Wiele API zwraca szczegóły błędów jako escape'owane napisy wewnątrz koperty JSON. Odescape'uj wiadomość, aby odczytać ślady stosu i zagnieżdżone ładunki, które w innym razie są ukryte za sekwencjami ucieczki.

Szczegóły techniczne

Algorytm dekodowania
Narzędzie parsuje dane wejściowe jako napis JSON: jeśli są już owinięte w podwójne cudzysłowy, są dekodowane jak są, w przeciwnym razie surowe wejście jest najpierw owijane w cudzysłowy, aby naga escape'owana treść również się zdekodowała. Każda rozpoznana sekwencja ucieczki (\n \r \t \b \f \" \\ \/ \uXXXX) mapuje się na swój znak; odzwierciedla to zgodny parser JSON, gwarantując, że każdy napis escape'owany przez serializator wraca do swojego dokładnego oryginału.
Rekonstrukcja par surogatów
Sekwencja \uXXXX daje pojedynczą jednostkę kodową UTF-16. Gdy po wysokim surogacie (\uD800–\uDBFF) bezpośrednio następuje niski surogat (\uDC00–\uDFFF), oba są łączone w jeden punkt kodowy powyżej Podstawowej Płaszczyzny Wielojęzycznej — więc \ud83d\ude00 dekoduje się na pojedynczy znak 😀, a nie na dwie zepsute połówki.
Walidacja i obsługa błędów
Jeśli dane wejściowe zawierają nieprawidłową sekwencję ucieczki (odwrotny ukośnik, po którym następuje nierozpoznany znak, lub zniekształconą sekwencję \u) albo niezbalansowane cudzysłowy psujące owijanie, dekodowanie kończy się czysto, a baner błędu jest pokazywany zamiast emitowania uszkodzonego wyniku. Poprawne dane wejściowe zawsze dają dokładny zdekodowany napis; nieprawidłowe dane wejściowe nigdy nie dają mylącego częściowego wyniku.

Dobre praktyki

Wklejaj z cudzysłowami lub bez — oba działają
Nie trać czasu na przycinanie otaczających cudzysłowów. Narzędzie dekoduje "hello\nworld" i hello\nworld identycznie, więc wklej to, co skopiowałeś — w tym fragment wyjęty ze środka większego dokumentu — i odczytaj wynik.
Odescape'uj raz, potem sprawdź podwójne kodowanie
Jeśli zdekodowany wynik nadal pokazuje sekwencje z odwrotnym ukośnikiem, jak \n, oryginał był podwójnie escape'owany wcześniej w potoku. Odescape'uj drugi raz, aby potwierdzić, a następnie popraw producenta, by escape'ował tylko raz, zamiast polegać na powtarzanym dekodowaniu.
Zweryfikuj zdekodowany JSON
Po odescape'owaniu ładunku JSON-in-JSON przepuść wynik przez nasze Formatowanie JSON, aby potwierdzić, że jest poprawny, i go sformatować. Unescape odzyskuje tekst; formatowanie potwierdza strukturę.
Weryfikuj konwersję w obie strony przez Zamień
Kliknij Zamień kierunek, aby ponownie escape'ować zdekodowany tekst i sprawdzić, czy zgadza się z napisem, od którego zacząłeś. Niezgodność wskazuje na zniekształcone dane wejściowe lub nieoczekiwaną sekwencję ucieczki, ujawniając problemy z danymi, zanim się rozprzestrzenią.

Najczęściej zadawane pytania

Co robi to narzędzie unescape JSON?
Odwraca escape'owanie JSON: przyjmuje escape'owany napis JSON i dekoduje sekwencje ucieczki z powrotem na znaki, które reprezentują, w całości w Twojej przeglądarce. \n staje się prawdziwą nową linią, \t tabulatorem, \" podwójnym cudzysłowem, \\ pojedynczym odwrotnym ukośnikiem, \/ ukośnikiem, a \uXXXX odpowiednim znakiem Unicode (w tym pary surogatów dla emoji i pism astralnych). Wynik to oryginalny, czytelny dla człowieka tekst. Możesz wkleić napis z otaczającymi podwójnymi cudzysłowami lub bez nich — narzędzie wykrywa i obsługuje oba przypadki. Wszystko działa po stronie klienta, więc escape'owane ładunki zawierające wrażliwe dane nigdy nie opuszczają Twojej maszyny.
Czy muszę dołączać otaczające podwójne cudzysłowy?
Nie — narzędzie akceptuje obie formy. Jeśli wkleisz pełny literał napisu JSON, jak "hello\nworld" (z zewnętrznymi cudzysłowami), jest on parsowany bezpośrednio. Jeśli wkleisz samą escape'owaną treść hello\nworld (bez zewnętrznych cudzysłowów), narzędzie owija ją za Ciebie przed dekodowaniem. Jest to wygodne, ponieważ escape'owane napisy są często kopiowane ze środka większego dokumentu, gdzie otaczające cudzysłowy zostały pominięte. Tak czy inaczej otrzymujesz ten sam zdekodowany tekst.
Czy moje dane są gdziekolwiek wysyłane?
Nie. Całe dekodowanie działa w całości w Twojej przeglądarce za pomocą JavaScript — escape'owany napis, który wklejasz, nigdy nie jest przesyłany, przechowywany, logowany ani analizowany na żadnym serwerze. Dzięki temu narzędzie jest bezpieczne do dekodowania pól logów, ładunków webhooków i wartości konfiguracyjnych, które mogą zawierać dane osobowe lub sekrety. Możesz to potwierdzić w karcie Sieć w przeglądarce: wklejanie wywołuje zero żądań sieciowych. Żadne pliki cookie nie przechwytują Twoich danych wejściowych i żadna analityka firm trzecich nie odczytuje tego, co wklejasz.
Dlaczego pojawia się błąd „nieprawidłowa sekwencja ucieczki”?
Błąd oznacza, że dane wejściowe nie są poprawnym escape'owanym napisem JSON, więc nie można ich jednoznacznie zdekodować. Najczęstszą przyczyną jest pojedynczy odwrotny ukośnik, po którym następuje znak, którego JSON nie rozpoznaje jako sekwencji ucieczki — na przykład \q lub \x41 (JSON nie ma sekwencji szesnastkowej \x; używa \u). Inną przyczyną jest niezbalansowany lub błędny podwójny cudzysłów wewnątrz wejścia bez cudzysłowów, który psuje automatyczne owijanie. Sprawdź, czy każdy odwrotny ukośnik rozpoczyna poprawną sekwencję ucieczki (\n \t \r \b \f \" \\ \/ \uXXXX) i czy cudzysłowy są prawidłowo sparowane.
Jak odczytać obiekt JSON przechowywany jako napis (JSON-in-JSON)?
Wklej escape'owany napis — na przykład {\"a\":1} — a narzędzie zdekoduje go z powrotem na prawdziwy JSON {"a":1}, który następnie możesz odczytać lub skopiować do parsera. To podwójne dekodowanie jest dokładnie tym, czego potrzebujesz, gdy koperta webhooka, rekord kolejki komunikatów lub log audytu przechowuje treść żądania jako escape'owane pole napisu. Po odescape'owaniu wklej wynik do naszego Formatowania JSON, aby go sformatować i zweryfikować. Aby pójść w drugą stronę i escape'ować JSON do osadzenia, użyj narzędzia Escape JSON.
Czy poprawnie dekoduje \uXXXX i emoji?
Tak. Każde \uXXXX jest dekodowane na swoją jednostkę kodową UTF-16, a kolejne sekwencje wysokiego/niskiego surogatu są łączone w poprawny znak astralny — więc \ud83d\ude00 staje się 😀, a \u00e9 staje się é. Jest to to samo dekodowanie, które wykonuje każdy zgodny parser JSON, co oznacza, że napis escape'owany naszym narzędziem Escape JSON (lub dowolnym serializatorem) wraca tu do dokładnego oryginału, bajt po bajcie.

Powiązane narzędzia

Zobacz wszystkie narzędzia →