Перейти к содержанию
100% локально

Экранировщик кодовых строк

Преобразуй вставленный текст в строковый литерал для C, Python, SQL, shell и 16 других языков — и обратно.

Входные данные
Выходные данные

Экранировщик кодовых строк

Вставьте текст и этот инструмент преобразует его в правильный строковый литерал для выбранного вами языка — C, C++, C#, Java, JavaScript, TypeScript, Python, Go, Rust, PHP, Ruby, Swift, Kotlin, SQL, Shell, PowerShell, YAML, JSON, XML или CSV — либо работает в обратном направлении, преобразуя экранированный литерал обратно в простой текст. Каждый язык экранирует кавычки, обратные слэши и переносы строк немного по-разному: синтаксис, валидный в PHP с одинарными кавычками, ломается в Python, а bash-строка с двойными кавычками ведёт себя иначе, чем PowerShell-строка с той же пунктуацией.

Выберите стиль кавычек, соответствующий вставляемому коду — одинарные, двойные или backtick, где это поддерживается языком; неподдерживаемая комбинация, например backtick-строка в C, автоматически переходит на стандартный вариант языка вместо создания неверного кода. Опция «Обернуть результат в кавычки» добавляет или убирает окружающие кавычки. «Экранировать не-ASCII как \u последовательности» преобразует ударные буквы и эмодзи в \uXXXX escapes для строгого ASCII-выхода; отключено — остаются буквальными UTF-8. «Сохранить буквальные табуляции» оставляет символы табуляции как есть, вместо их экранирования.

«Использовать многострочный литерал вместо \n» переключает многострочный текст на встроенную многострочную форму языка, если она существует — тройные кавычки в Python, template literal в JavaScript, heredoc в PHP или Ruby, quoted heredoc в bash, here-string в PowerShell или блочный скаляр в YAML — чтобы результат читался с реальными разрывами строк вместо стены символов \n. Языки без этой формы (C, C++, C#, Go, Kotlin, JSON, XML, CSV) переходят на экранирование \n.

Всё работает локально в вашем браузере. Вставляемый фрагмент — значение конфигурации, строка лога, пользовательский ввод, который вы защищаете для запроса — никогда не покидает ваше устройство. Скопируйте результат, загрузите как файл .txt или отправьте в другой инструмент для продолжения работы.

FAQ

Какой стиль кавычек выбрать?
Соответствуйте тому, что ожидает окружающий код. Большинство языков семейства C (C, C++, C#, Java, Go, Rust, Swift, Kotlin) поддерживают только двойные кавычки для строк, поэтому одинарные или backtick автоматически переходят на двойные. JavaScript, TypeScript, Python, PHP и Ruby поддерживают несколько стилей, и строки PHP/Ruby с одинарными кавычками экранируют только обратный слэш и кавычку — всё остальное, включая табуляции и переносы, остаётся полностью буквальным.
Что именно производит «Использовать многострочный литерал вместо \n»?
Заменяет обычный однострочный результат, экранированный \n, встроенной многострочной конструкцией языка — тройные кавычки в Python, template literal в JavaScript/TypeScript, heredoc в PHP, Ruby или bash, here-string в PowerShell или блочный скаляр в YAML — сохраняя реальные разрывы строк в выводе. Меняет результат только если ввод содержит более одной строки и выбранный язык имеет такую конструкцию; иначе это бездействие.
Автоматически ли раскрытие экрана распознаёт окружающие кавычки?
Да. Вставьте экранированный литерал — с кавычками или без — и инструмент удалит соответствующую оболочку (включая многострочную, если она есть) перед декодированием. Раскрытие экрана — это лучшее усилие: неизвестная escape-последовательность сохраняется как литеральный символ, а не отклоняется как ошибка.
Почему не каждый язык получает свой собственный точный синтаксис \u?
Чтобы поведение было предсказуемым, экранирование не-ASCII всегда пишет простую \uXXXX последовательность (или для XML — числовую ссылку на символ по реальной кодовой точке). Это точно совпадает с JavaScript, Java, C# и JSON; другие языки принимают это как UTF-16 ввод, даже если их собственный встроенный синтаксис немного отличается, например астральный символ, разделённый на два экрана.
Загружается ли мой код или текст где-нибудь?
Нет. Экранирование и раскрытие экрана работают полностью в вашем браузере — ничего из того, что вы вставляете здесь, никогда не отправляется на сервер.