Utilia

Odstranění neviditelných znaků

Najdi a odstraň neviditelné znaky online. Odhal mezery nulové šířky, pevné mezery, měkké spojovníky a řídicí znaky obousměrného písma (Trojan Source).

Znaky k odstranění

Jak odstranit neviditelné znaky

  1. Vlož text do vstupního pole. Prohledá se, jakmile ho vložíš.
  2. Přečti si výsledek: tabulka vypíše každý nalezený skrytý znak s jeho kódovým bodem, zkratkou, názvem v Unicode, typem a počtem. Vstup se zvýrazněním ukazuje, kde každý z nich leží, jako malý barevný štítek, například ZWSP nebo NBSP.
  3. V části Znaky k odstranění nech zaškrtnuté typy, které chceš smazat. Vybrat vše / nic je přepne všechny najednou.
  4. Nech zaškrtnuté Nahradit pevné a zvláštní mezery běžnou mezerou, aby si „10 000“ zachovalo mezeru a nezměnilo se na „10000“.
  5. Vyčištěný text zkopíruj z pole s výsledkem. Odstranit neviditelné znaky výsledek obnoví.

Co nástroj rozpoznává

Typ Znaky Odkud pocházejí
Znaky nulové šířky ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF Webové stránky, textové procesory, text zkopírovaný z PDF nebo chatovacích aplikací, soubory uložené se značkou pořadí bajtů
Pevné a zvláštní mezery NBSP U+00A0, úzká NBSP U+202F, tenká mezera, em, en, číselná a ideografická mezera, oddělovače řádků a odstavců HTML  , francouzská typografie, Word, macOS Option+mezerník
Měkké spojovníky SHY U+00AD Rady k dělení slov z textových procesorů a webů
Řídicí znaky obousměrného písma LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) Smíšený arabský, hebrejský a latinský text a škodlivý kód
Řídicí znaky NUL, ESC, posun stránky, DEL, řídicí znaky C1 Výstup terminálu, staré soubory, rozbitá kódování
Další formátovací znaky Znaky tagů, neviditelné matematické operátory, hangulské výplně, prázdný brailleův znak, jakýkoli jiný znak Unicode „Cf“ Skryté vodoznaky, „prázdná“ uživatelská jména, nejasné zdroje
Variační selektory VS1–VS256 Styly emodži, varianty CJK a steganografický trik, který ukrývá data za emodži

Tabulátory, konce řádků a návraty vozíku jsou běžné znaky a nástroj se jich nikdy nedotkne. Variační selektory nejsou ve výchozím nastavení vybrané, protože bývají oprávněné.

Proč neviditelné znaky dělají potíže

Nevypadají jako nic, ale počítače je vidí. Mezera nulové šířky uvnitř slova rozbije vyhledávání a kontrolu pravopisu, značka pořadí bajtů na začátku souboru CSV poškodí název prvního sloupce, pevná mezera způsobí, že se dvě hodnoty v tabulce při vyhledání liší nebo že nefunguje pole s heslem, a měkký spojovník může rozdělit adresu URL. Kód, který obsahuje zatoulané U+FEFF nebo U+00A0, se může odmítnout přeložit se záhadnou chybou.

Neviditelné znaky mohou být také záměrné: některé slouží k označení zkopírovaného textu, aby bylo možné vysledovat jeho únik ke zdroji.

Trojan Source a řídicí znaky obousměrného písma

Řídicí znaky obousměrného písma říkají zobrazovacímu systému, aby část řádku vykreslil zprava doleva. Uvnitř zdrojového kódu mohou způsobit, že kód vypadá jinak, než co kompilátor skutečně spustí. Tento útok byl v roce 2021 zveřejněn pod názvem „Trojan Source“ (CVE-2021-42574). Když nástroj některý najde, zobrazí upozornění. Oprávněný arabský nebo hebrejský text může používat značky LRM a RLM, ale řídicí znaky vnoření, přepsání a izolace v kódu nebo konfiguračním souboru jsou varovným signálem.

Ponech, co potřebuješ

  • Ponechat spojovací znaky a selektory uvnitř emodži chrání spojovače nulové šířky a variační selektory, které skládají emodži jako 👨‍👩‍👧 nebo ❤️. Zrušením zaškrtnutí se odstraní i ony: emodži rodiny se pak rozpadne na tři samostatné osoby.
  • Perština, hindština a další písma používají ZWNJ a ZWJ k řízení spojování písmen. U takového textu zruš zaškrtnutí u Znaky nulové šířky (ZWSP, ZWNJ, ZWJ, WJ, BOM).
  • Francouzská typografie používá úzké pevné mezery před « ; : ! ? » a uvnitř uvozovek. Abys je zachoval, zruš zaškrtnutí typu mezer.
  • V češtině se pevné mezery používají za jednopísmennými předložkami a spojkami (k, s, v, z, a, i, o, u), aby nezůstaly na konci řádku, a mezi číslem a jednotkou. Nástroj je jako pevné mezery vypíše, takže pokud je chceš zachovat, nech u typu mezer zrušené zaškrtnutí.

Časté dotazy

Jak poznám, že můj text obsahuje mezery nulové šířky?

Vlož ho sem. Pokud tabulka zůstane prázdná a stav hlásí „Nebyly nalezeny žádné neviditelné znaky.“, žádné tam nejsou.

Spojí odstranění pevných mezer moje slova dohromady?

Ve výchozím nastavení ne: pevné a zvláštní mezery se nahradí běžnou mezerou. Zaškrtnutí nahrazení zruš jen tehdy, pokud chceš, aby se smazaly.

Odstraňuje nástroj běžné mezery, tabulátory nebo konce řádků?

Ne. Ovlivněny jsou jen výše uvedené typy znaků.

Je bezpečné vkládat důvěrný text?

Ano. Prohledávání i čištění probíhají ve tvém prohlížeči a nic se nenahrává ani neukládá.

Proč vyčištěný soubor stále ukazuje na začátku zvláštní znak?

Pokud byl soubor uložen v jiném kódování než UTF-8, může být problém v kódování, nikoli v neviditelném znaku. Ulož soubor znovu jako UTF-8 a prohledej ho znovu.