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, тънък, дълъг, къс, цифров и идеографски интервал, разделители на редове и абзаци HTML  , френска типография, Word, macOS Option+Space
Меки тирета 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 варианти и трик със стеганография, който скрива данни след емоджи

Табулациите, новите редове и връщането на каретката са обикновени символи и никога не се пипат. Селекторите на вариант не са избрани по подразбиране, защото обикновено са законни.

Защо невидимите символи създават проблеми

Изглеждат като нищо, но компютрите ги виждат. Интервал с нулева ширина вътре в дума разваля търсенето и проверката на правописа, маркерът BOM в началото на CSV файл повредява името на първата колона, неразделимият интервал прави две стойности различни при търсене в електронна таблица или в поле за парола, а меко тире може да разцепи уеб адрес. Код със случаен U+FEFF или U+00A0 може да откаже да се компилира с озадачаваща грешка.

Невидимите символи могат да са и умишлени: някои се използват за „отпечатък“ на копиран текст, за да може изтичането да се проследи до източника.

Trojan Source и двупосочните контроли

Двупосочните контроли указват на механизма за изобразяване да подреди част от реда отдясно наляво. Вътре в изходен код те могат да накарат кода да изглежда различно от това, което компилаторът всъщност изпълнява, атака, публикувана през 2021 г. като „Trojan Source“ (CVE-2021-42574). Когато инструментът открие такъв символ, показва предупреждение. Законният арабски или ивритски текст може да използва знаци LRM и RLM, но контролите за вграждане, замяна и изолиране в код или конфигурационен файл са червен флаг.

Запазете това, което ви трябва

  • Запази свързващите знаци и селекторите в емоджитата защитава свързващите знаци с нулева ширина и селекторите на вариант, които изграждат емоджита като 👨‍👩‍👧 или ❤️. Махнете отметката, за да ги премахнете и тях; тогава емоджито на семейство се превръща в три отделни човека.
  • Персийският, хинди и други писмености използват ZWNJ и ZWJ, за да управляват свързването на буквите. За такъв текст махнете отметката от Символи с нулева ширина (ZWSP, ZWNJ, ZWJ, WJ, BOM).
  • Френската типография използва тесни неразделими интервали пред « ; : ! ? » и вътре в кавичките. Махнете отметката от интервалите, за да ги запазите.
  • В българския текст неразделимият интервал често е законен, например в „10 000 лв.“ или „5 кг“. Затова оставете отбелязано Замени неразделимите и специалните интервали с обикновен интервал, ако не искате да ги изтриете.

Често задавани въпроси

Как да разбера дали текстът ми съдържа интервали с нулева ширина?

Поставете го тук. Ако таблицата остане празна и състоянието гласи „Не са намерени невидими символи.“, няма такива.

Ще слеят ли думите ми, ако премахна неразделимите интервали?

Не при настройката по подразбиране: неразделимите и специалните интервали се заменят с обикновен интервал. Махнете отметката от замяната само ако искате да бъдат изтрити.

Премахва ли инструментът обикновени интервали, табулации или нови редове?

Не. Засягат се само изброените по-горе видове символи.

Безопасно ли е да поставя поверителен текст?

Да. Сканирането и почистването се извършват във вашия браузър; нищо не се качва и не се съхранява.

Защо почистеният ми файл още показва странен символ в началото?

Ако файлът е записан в кодиране, различно от UTF-8, проблемът може да е в кодирането, а не в невидим символ. Запишете файла отново като UTF-8 и го сканирайте пак.