Utilia

Видалення невидимих символів

Знайдіть і видаліть невидимі символи онлайн: пробіли нульової ширини, нерозривні пробіли, м’які переноси та двонапрямні символи (Trojan Source).

Символи для видалення

Як видалити невидимі символи

  1. Вставте текст у поле вхідних даних. Він скануватиметься одразу після вставлення.
  2. Перегляньте результат: таблиця перелічує кожен знайдений прихований символ із кодовою точкою, скороченням, назвою Unicode, типом і кількістю. У полі Вхідні дані з підсвічуванням видно, де розташований кожен із них, у вигляді невеликого кольорового значка на кшталт ZWSP чи NBSP.
  3. У розділі Символи для видалення залишайте позначеними типи, які хочете видалити. Кнопка Вибрати все / нічого перемикає їх усі разом.
  4. Залишайте позначеним Замінювати нерозривні та спеціальні пробіли звичайним пробілом, щоб «10 000» зберегло пробіл, а не перетворилося на «10000».
  5. Скопіюйте очищений текст із поля результату. Кнопка Видалити невидимі символи оновлює результат.

Що виявляє цей інструмент

Тип Символи Звідки беруться
Символи нульової ширини ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF Вебсторінки, текстові редактори, текст, скопійований із PDF-файлів чи месенджерів, файли, збережені з маркером порядку байтів
Нерозривні та спеціальні пробіли NBSP U+00A0, вузький NBSP U+202F, тонкий, em-, en-, цифровий та ідеографічний пробіли, роздільники рядків і абзаців HTML  , французька типографіка, Word, macOS Option+Пробіл
М’які переноси SHY U+00AD Підказки переносу від текстових редакторів і сайтів
Двонапрямні керувальні символи LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) Змішаний арабський, іврит і латиниця, а також зловмисний код
Керувальні символи NUL, ESC, перевід сторінки, DEL, керувальні C1 Вивід терміналу, старі файли, зіпсовані кодування
Інші символи форматування Символи-теги, невидимі математичні оператори, заповнювачі хангиля, порожній символ Брайля, будь-який інший символ Unicode «Cf» Приховані водяні знаки, «порожні» імена користувачів, маловідомі джерела
Селектори варіантів VS1–VS256 Стилі емодзі, варіанти CJK і стеганографічний прийом, що ховає дані після емодзі

Табуляції, переводи рядка та повернення каретки є звичайними символами й ніколи не зачіпаються. Селектори варіантів за замовчуванням не вибрані, бо зазвичай вони легітимні.

Чому невидимі символи створюють проблеми

Вони нічого не показують, але комп’ютери їх бачать. Пробіл нульової ширини всередині слова ламає пошук і перевірку правопису, маркер порядку байтів на початку CSV-файлу псує назву першого стовпця, нерозривний пробіл робить два значення різними під час пошуку в електронній таблиці чи в полі пароля, а м’який перенос може розірвати URL-адресу. Код із випадковим U+FEFF або U+00A0 може відмовитися компілюватися з незрозумілою помилкою. У текстах українською ці символи часто потрапляють із Word, месенджерів і сайтів, зокрема як нерозривний пробіл у «10 000 ₴».

Невидимі символи бувають і навмисними: деякі використовуються як відбиток скопійованого тексту, щоб можна було простежити витік до джерела.

Trojan Source і двонапрямні керувальні символи

Двонапрямні керувальні символи вказують рушієві відображення розташувати частину рядка справа наліво. У вихідному коді вони можуть зробити код таким, що виглядає інакше, ніж те, що насправді виконує компілятор: цю атаку опубліковано в 2021 році під назвою «Trojan Source» (CVE-2021-42574). Коли інструмент знаходить такий символ, він показує попередження. Легітимний арабський чи івритський текст може використовувати позначки LRM і RLM, але керувальні символи вбудовування, перевизначення та ізоляції в коді або файлі конфігурації – тривожний сигнал.

Залиште те, що потрібно

  • Зберігати з’єднувачі й селектори всередині емодзі захищає з’єднувачі нульової ширини та селектори варіантів, з яких складаються емодзі на кшталт 👨‍👩‍👧 чи ❤️. Зніміть позначку, щоб видалити й їх; тоді емодзі сім’ї перетвориться на трьох окремих людей.
  • Перська, гінді та інші писемності використовують ZWNJ і ZWJ для керування сполученням літер. Для такого тексту зніміть позначку з Символи нульової ширини (ZWSP, ZWNJ, ZWJ, WJ, BOM).
  • Французька типографіка використовує вузькі нерозривні пробіли перед « ; : ! ? » і всередині лапок. Зніміть позначку з типу пробілів, щоб зберегти їх.

Поширені запитання

Як дізнатися, чи містить мій текст пробіли нульової ширини?

Вставте його сюди. Якщо таблиця залишається порожньою, а стан показує «Невидимих символів не знайдено.», їх немає.

Чи не склеїть видалення нерозривних пробілів мої слова?

Не за налаштування за замовчуванням: нерозривні та спеціальні пробіли замінюються звичайним пробілом. Знімайте позначку із заміни, лише якщо хочете їх видалити.

Чи видаляє інструмент звичайні пробіли, табуляції чи розриви рядків?

Ні. Зачіпаються лише перелічені вище типи символів.

Чи безпечно вставляти конфіденційний текст?

Так. Сканування й очищення виконуються у вашому браузері; нічого не завантажується на сервер і не зберігається.

Чому очищений файл усе одно показує дивний символ на початку?

Якщо файл збережено в кодуванні, відмінному від UTF-8, проблема може бути в кодуванні, а не в невидимому символі. Збережіть файл заново як UTF-8 і проскануйте його ще раз.