Tekst
String Escape
Zamień tekst na literał łańcuchowy przez escapowanie (cudzysłowy, ukośnik wsteczny, znaki kontrolne) do wklejenia w kodzie, lub cofnij escapowanie.
To put text containing quotes, line breaks, or backslashes inside a string literal in code, those characters need escaping — otherwise they'll end the string early or get misinterpreted. This tool escapes and unescapes text for a specific syntax.
How to use it
- Escape: paste text and pick a target context (a JS string, JSON, shell, etc.) and special characters get replaced with the matching escape sequences.
- Unescape: paste an already-escaped string to get the original text back.
- Different contexts escape the same character differently — make sure you've picked the mode matching where the text will actually be inserted.
Common uses
- Inserting multi-line text or text with quotes into a code variable without manually placing backslashes.
- Preparing a string for a shell command, where quotes and special characters can break execution.
- Unescaping a string copied from logs or a JSON response to read the original text.
Things to keep in mind
The same character (a double quote, for example) is escaped differently depending on context — a JS string, JSON, and a shell each have their own syntax and their own set of special characters.
Double-escaping (escaping already-escaped text) is a common mistake when passing data through multiple layers, like JSON nested inside a shell command.
Artykuł o tym narzędziu: String Escape: dlaczego ten sam tekst trzeba escapować inaczej
Najczęstsze pytania
Co dokładnie robi escapowanie?
Zamienia cudzysłowy, ukośniki wsteczne i znaki kontrolne (takie jak nowe linie czy tabulatory) na prawidłowe sekwencje ucieczki wewnątrz literału łańcucha, dzięki czemu tekst można wkleić bez zmian do kodu źródłowego.
Do czego służą opcje stylu cudzysłowów i unicode?
Styl cudzysłowów (podwójny, pojedynczy lub backtick) określa, który znak jest escapowany, aby nie zepsuć łańcucha, a opcja \uXXXX konwertuje znaki spoza ASCII na escapowane sekwencje unicode zamiast pozostawiać je bez zmian.
Czy wklejony tekst jest wysyłany na serwer?
Nie, escapowanie i jego cofanie działa całkowicie w przeglądarce za pomocą JavaScript, żadne dane nie są wysyłane online.
Co zrobić, jeśli tekst przechodzi przez kilka kontekstów pod rząd?
Escapowanie należy wykonać we właściwej kolejności: najpierw dla kontekstu wewnętrznego (np. JSON), potem dla zewnętrznego (np. polecenia shell, do którego ten JSON jest wstawiany). Pomylona kolejność lub pominięty poziom to typowa przyczyna, dlaczego „poprawnie escapowany" łańcuch i tak psuje się w praktyce.
Dlaczego ten sam cudzysłów jest escapowany inaczej w różnych kontekstach?
Każdy kontekst (łańcuch JS, JSON, shell, regex) ma własną składnię z własnym zestawem znaków specjalnych i własnym sposobem ich escapowania — dlatego prawidłowe escapowanie zależy od tego, gdzie dokładnie wstawiany jest tekst, a nie od samego tekstu.