Generator niewidzialnych znaków
Wygeneruj pusty znak lub niewidzialną spację, wstaw ukryte znaki do tekstu albo usuń je z wklejonej treści.
-
1Wprowadź dane
Wpisz treść, wklej tekst lub załaduj plik z dysku. -
2Kliknij przycisk
Narzędzie natychmiast przetworzy Twoje dane w przeglądarce. -
3Pobierz wynik
Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
return "Wynik gotowy w 0.1s";
}
Wygenerowany ciąg
10 × ZWSP (U+200B). Na ekranie wygląda jak puste miejsce: skopiuj wynik przyciskiem poniżej.
Znaki niewidoczne w wyniku
Ich udział w wyniku
Rozmiar wyniku
Bajty w UTF-8
Zawartość wyniku: 10 × ZWSP (U+200B).
Kod znaków
Ściąga: znaki niewidoczne w Unicode
| Znak | Kod | Szerokość | UTF-8 | Co robi |
|---|---|---|---|---|
| ZWSP – spacja zerowej szerokości | U+200B | zerowa | 3 B | Niewidoczna spacja; wskazuje miejsce, w którym wolno złamać wiersz. |
| ZWNJ – nie-łącznik zerowej szerokości | U+200C | zerowa | 3 B | Rozdziela znaki, które inaczej by się połączyły (m.in. w pismach arabskim i perskim). |
| ZWJ – łącznik zerowej szerokości | U+200D | zerowa | 3 B | Łączy znaki w jedną całość; w emoji skleja sekwencje, np. emoji rodziny. |
| WJ – łącznik słów | U+2060 | zerowa | 3 B | Zabrania złamania wiersza w tym miejscu. |
| BOM – niełamliwa spacja zerowej szerokości (BOM) | U+FEFF | zerowa | 3 B | Znacznik kolejności bajtów (BOM) na początku pliku; w środku tekstu to dawny odpowiednik U+2060. |
| BRL – pusty wzór Braille’a | U+2800 | jak zwykły znak | 3 B | Wygląda jak puste miejsce, ale zajmuje miejsce zwykłego znaku. |
| HF – wypełniacz Hangul | U+3164 | jak zwykły znak | 3 B | Wygląda jak puste miejsce, w wielu czcionkach zajmuje miejsce zwykłego znaku. |
Czy aplikacja przyjmie taki znak?
To zależy od aplikacji i bywa zmieniane bez zapowiedzi. Część serwisów usuwa znaki zerowej szerokości z nazw i wiadomości, część traktuje je jak zwykły tekst. Jeśli jeden znak nie przechodzi, spróbuj innego z listy, np. U+2800 lub U+3164, które zajmują miejsce zwykłego znaku. Zawsze sprawdź wynik w docelowej aplikacji.
Jak to liczymy
Każdy znak z tabeli zajmuje w UTF-8 po 3 bajty, więc rozmiar ciągu to liczba znaków × 3 B: 12 znaków to 36 B. Udział znaków niewidocznych to ukryte ÷ wszystkie × 100%, w dół do pełnych procent. Z tekstu „abcdef” po wstrzyknięciu co 2 znaki powstaje 9 znaków, w tym 3 ukryte: 3 ÷ 9 = 33%.
Typowe pułapki
Ukryte znaki psują wyszukiwanie, sortowanie i porównywanie tekstów: dwa napisy wyglądają tak samo, a różnią się bajtami. W kodzie, hasłach i adresach to źródło błędów trudnych do znalezienia. To nie jest zabezpieczenie danych: takie znaki da się wykryć i usunąć.
Oczyszczanie bez szkód
Tryb „Oczyść tekst” usuwa U+200B, U+200C, U+200D, U+2060 i U+FEFF. Znaki U+200C i U+200D bywają częścią emoji złożonych i niektórych pism, dlatego możesz je zachować odpowiednią opcją. Znaków U+2800 i U+3164 nie usuwamy, bo mogą być zwykłą częścią tekstu.
Oceń to narzędzie:
Powiązane narzędzia
Inne narzędzia, które mogą Ci się przydaćPodaj dalej
Komuś też się przyda?
Wyślij znajomemu link. Otworzy narzędzie od razu, bez konta i bez opłat.
Generator niewidzialnych znaków – zrób „pustą” wiadomość, ukryj separator albo wyczyść tekst z ukrytych śmieci
Niewidzialne znaki to znaki Unicode, których nie widać na ekranie, ale komputer i większość aplikacji traktuje je jak zwykły tekst. Dzięki nim zrobisz pustą wiadomość albo pusty nick, wstawisz dyskretny separator w poście lub – co bywa najważniejsze – usuniesz ukryte znaki, które po wklejeniu psują wyszukiwanie i porównywanie tekstu. Generator obsługuje 7 typów znaków: tworzy z nich ciąg o długości do 10 000, wstrzykuje je do tekstu co N znaków lub losowo i czyści wklejone treści.
Co to są niewidzialne znaki i czemu w ogóle istnieją?
„Niewidzialne znaki” to znaki Unicode, które nie mają własnego glifu (nic się nie rysuje na ekranie) albo mają glif pusty, ale wpływają na to, jak tekst jest dzielony, łączony, kopiowany i interpretowany przez aplikacje. Część z nich ma konkretne zadania: U+200B wskazuje miejsce, w którym wolno złamać wiersz, U+200D skleja emoji w jedną sekwencję (np. emoji rodziny), a U+200C rozdziela litery w piśmie arabskim i perskim. Inne, jak U+3164 czy U+2800, należą do zwykłych systemów pisma, a „pustymi znakami” stały się przy okazji.
Efekt jest prosty: możesz stworzyć „pusty” tekst, który da się wkleić, albo pozbyć się ukrytych znaków skopiowanych z PDF-a, edytora, komunikatora czy generatora AI.
Najczęstsze zastosowania
Ludzie używają tych znaków częściej, niż myślą. Jeśli tekst wygląda identycznie, a wyszukiwarka nie znajduje w nim słowa albo porównanie dwóch napisów zwraca „różne”, bardzo możliwe, że w środku siedzi znak zerowej szerokości.
- puste wiadomości lub „puste” komentarze tam, gdzie aplikacja wymaga znaku
- pusty nick albo opis profilu (najczęściej z U+3164 lub U+2800)
- separatory i odstępy w komunikatorach
- oczyszczanie tekstu z ukrytych znaków po kopiowaniu
- testy: czy system liczy znaki „po Unicode”, „po bajtach” czy „po widoku”
Jak korzystać z generatora – cztery tryby
Wybierasz tryb, typ znaku i parametry, a potem klikasz przycisk akcji. Każdy tryb służy do czegoś innego.
Generuj ciąg
Tworzy ciąg niewidzialnych znaków jednego typu o długości od 1 do 10 000. Przydaje się do „pustych” wiadomości, pustych nazw (tam, gdzie przechodzą) i testów limitów znaków.
Wstrzyknij co N
Wklejasz tekst (do 50 000 znaków), a generator wstawia wybrany znak po każdych N znakach, przy N od 1 do 1000. Emoji złożone i litery z doklejonym akcentem liczą się jako jeden znak, więc wstrzyknięcie ich nie rozbija.
Wstrzyknij losowo
Po każdym znaku tekstu generator losuje, czy wstawić ukryty znak, z ustawionym prawdopodobieństwem 1–100%. Wynik jest nieregularny i po każdym kliknięciu „Losuj ponownie” inny, co pomaga symulować wklejki z różnych źródeł.
Oczyść tekst
Usuwa z wklejonego tekstu znaki zerowej szerokości: U+200B, U+200C, U+200D, U+2060 i U+FEFF. To tryb ratunkowy, gdy tekst wygląda normalnie, a łamie wyszukiwanie, sortowanie lub porównania.
W trybach z tekstem wejściowym narzędzie od razu pokazuje, ile ukrytych znaków jest już we wklejonej treści i jakiego są typu, więc działa też jako wykrywacz.
Typy niewidzialnych znaków: które wybrać i kiedy
Najczęściej wystarczy Zero Width Space (U+200B): jest szeroko wspierany i nie zajmuje miejsca. Gdy platforma wycina znaki zerowej szerokości (częste w nickach i polach typu „nie może być puste”), lepsze są U+3164 lub U+2800, które wyglądają jak puste miejsce, ale mają szerokość zwykłego znaku. Każdy z siedmiu znaków zajmuje w UTF-8 3 bajty.
| Znak | Nazwa | Co robi (po ludzku) | Kiedy używać | Uwaga |
|---|---|---|---|---|
| U+200B | Zero Width Space (ZWSP) | „Niewidzialna spacja” bez szerokości, miejsce na złamanie wiersza | Puste wiadomości, separatory, testy limitów | Bywa wycinany przez filtry antyspamowe |
| U+200C | Zero Width Non-Joiner (ZWNJ) | Rozdziela znaki, które inaczej by się połączyły | Specjalne przypadki, gdy tekst się „skleja” | Ma sens głównie w pismach łączonych, np. arabskim i perskim |
| U+200D | Zero Width Joiner (ZWJ) | Wymusza łączenie (np. w sekwencjach emoji) | Emoji, kombinacje, separatory w komunikatorach | Między dwoma emoji może je skleić w jedno |
| U+2060 | Word Joiner (WJ) | Zabrania złamania wiersza w tym miejscu | Gdy ciąg ma zostać w jednej linii bez widocznej spacji | Nie każda aplikacja go respektuje |
| U+FEFF | BOM / Zero Width No-Break Space | Znacznik kolejności bajtów na początku pliku | Raczej do czyszczenia niż do generowania | Na początku pliku CSV lub skryptu potrafi zepsuć pierwszy nagłówek albo polecenie |
| U+2800 | Braille Pattern Blank (BRL) | Pusty wzór pisma Braille’a, szerokość zwykłego znaku | Puste linie, nicki, pola wymagające treści | Tryb „Oczyść tekst” go nie usuwa |
| U+3164 | Hangul Filler (HF) | Wypełniacz z alfabetu koreańskiego, wygląda jak spacja | Puste nicki i wiadomości | Szerokość zależy od czcionki; tryb czyszczenia go nie usuwa |
Szybkie ustawienia: pusty wpis, jeden znak, separator
Nad trybami są trzy przyciski, które od razu generują gotowy ciąg w trybie „Generuj ciąg”. Jeśli chcesz mieć wynik w 5 sekund, to jest ta ścieżka.
Pusty wpis (280 × ZWSP)
Generuje 280 znaków U+200B, czyli 840 B. Wklejasz wynik tam, gdzie platforma normalnie nie pozwala na pusty wpis. Platformy mają swoje filtry i mogą taki wpis ukryć, oznaczyć albo nie przyjąć.
Jeśli celem jest po prostu odstęp między elementami treści, krótki separator działa lepiej niż maksymalna długość.
Jeden znak (1 × ZWSP)
Pojedynczy U+200B do pola, które wymaga choć jednego znaku, np. pustej nazwy. Systemy plików, chmury i synchronizacja nie zawsze go przyjmują, a folder bez widocznej nazwy trudno potem znaleźć i posortować, więc testuj to na kopii.
Separator (5 × ZWJ)
Komunikatory lubią „sprzątać” nadmiar spacji i puste linie, ale niewidzialne znaki czasem przechodzą. Separator pomaga zbudować czytelny układ wiadomości: nagłówek, blok, stopka.
Najlepsza praktyka: wygeneruj krótki ciąg (3–10 znaków), wyślij test do siebie i dopiero wtedy użyj go „na żywo”.
Udział ukrytych znaków i rozmiar w bajtach: co mówią statystyki?
Po wygenerowaniu narzędzie pokazuje liczbę znaków niewidocznych w wyniku i ich udział w procentach: ukryte ÷ wszystkie × 100, zaokrąglone w dół do pełnego procentu. Czysty ciąg z trybu „Generuj ciąg” ma zawsze 100%, a po wstrzyknięciu do zwykłego tekstu procent spada.
Druga rzecz to rozmiar w bajtach UTF-8: przed zmianą, po zmianie i różnica. Dwa teksty mogą wyglądać identycznie, a mieć inną wagę, bo każdy ukryty znak dodaje 3 B. Ma to znaczenie w miejscach z limitami liczonymi „po bajtach”: formularzach, API, opisach produktów i bazach danych.
| Przykład: „Ala ma kota”, tryb „Wstrzyknij co N”, N = 3, znak U+200B | Wynik |
|---|---|
| Tekst wejściowy | 11 znaków, 11 B |
| Gdzie trafia znak | po 3., 6. i 9. znaku: Ala[ZWSP] ma[ZWSP] ko[ZWSP]ta |
| Wstrzyknięto | 3 znaki |
| Długość wyniku | 11 + 3 = 14 znaków |
| Rozmiar po | 11 B + 3 × 3 B = 20 B (zmiana +9 B) |
| Udział ukrytych znaków | 3 ÷ 14 × 100 = 21,4, czyli 21% |
Usuwanie niewidzialnych znaków: kiedy to naprawdę ratuje dzień
Najbardziej niedoceniany tryb to „Oczyść tekst”. Tworzenie pustych wiadomości jest efektowne, ale czyszczenie ukrytych znaków jest praktyczne. Typowy objaw: tekst wygląda normalnie, ale:
- nie da się znaleźć słowa w wyszukiwarce (bo w środku siedzi ukryty znak)
- system odrzuca login lub hasło, mimo że „jest takie samo”
- porównanie dwóch ciągów mówi „różne”, choć wyglądają identycznie
- usuwanie duplikatów i sortowanie zostawia pozornie te same wiersze
- pierwszy nagłówek pliku CSV albo pierwsza linia skryptu nie jest rozpoznawana przez BOM (U+FEFF) na początku
Wklejasz tekst, klikasz „Oczyść tekst” i kopiujesz oczyszczoną wersję; licznik „Usunięto” pokazuje, ile znaków zniknęło. Przykład z przycisku „Wczytaj przykład” zawiera U+200B, U+200D i U+FEFF: narzędzie usuwa 3 znaki (9 B). Po zaznaczeniu opcji „Nie usuwaj U+200C i U+200D” usunie 2, a ZWJ zostanie, co chroni emoji złożone oraz tekst arabski i perski.
Tryb czyszczenia nie rusza zwykłych spacji, spacji niełamliwych ani podziałów wiersza. Znaki U+2800 i U+3164 zostają, bo mogą być zwykłą częścią tekstu, ale narzędzie wypisze je w liczniku wykrytych znaków. Do złamanych linii po wklejeniu z PDF-a użyj narzędzia usuwanie znaków podziału wiersza, a do szerszego porządkowania – czyszczenia tekstu.
Zapis jako kod: \uXXXX, encje HTML albo zwykły tekst
Do wklejenia w pole tekstowe wystarczy przycisk „Kopiuj wynik”. Jeśli pracujesz z kodem, debugujesz problem w systemie albo musisz przekazać ciąg jednoznacznie, wybierz format zapisu pod wynikiem:
- JavaScript / JSON – np.
\u200B. Wszystkie znaki spoza ASCII (także polskie litery) zamienia na kody, emoji na parę surogatów UTF-16, a cudzysłów i ukośnik odwrotny poprzedza ukośnikiem, więc wynik wklejasz wprost do napisu w cudzysłowie. - HTML – np.
​. Przydaje się, gdy edytor lub CMS „zjada” znaki, ale akceptuje encje.
Blok z kodem pojawia się dla wyników do 5000 znaków; dłuższy wynik skopiujesz jako zwykły tekst.
Najkrótsza instrukcja krok po kroku
- Wybierz tryb: Generuj ciąg / Wstrzyknij co N / Wstrzyknij losowo / Oczyść tekst.
- W trybach z tekstem wklej tekst wejściowy albo kliknij „Wczytaj przykład”.
- Wybierz typ znaku (na start U+200B); w trybie czyszczenia zdecyduj, czy zachować U+200C i U+200D.
- Ustaw długość, interwał lub prawdopodobieństwo.
- Kliknij przycisk akcji i skopiuj wynik przyciskiem „Kopiuj wynik”.
Opcja „Pokaż niewidoczne znaki jako etykiety” jest domyślnie włączona: zamiast pustki zobaczysz kolorowe znaczniki ZWSP, ZWNJ, ZWJ, WJ, BOM, BRL i HF. Podgląd obejmuje pierwsze 600 znaków wyniku.
Otwórz generator i wygeneruj niewidzialne znaki
Niewidzialny znak do skopiowania – szybka ściąga
Żeby skopiować niewidzialny znak, wybierz w trybie „Generuj ciąg” typ znaku i długość 1 (dla U+200B wystarczy przycisk „Jeden znak”), a potem kliknij „Kopiuj wynik”. Najczęściej używane warianty:
- U+3164 (Hangul Filler) – najpopularniejszy „pusty znak” do nicków w grach i pustych wiadomości w komunikatorach; wygląda jak zwykła spacja, ale nią nie jest, więc często przechodzi walidację „pole nie może być puste”.
- U+200B (Zero Width Space) – znak o zerowej szerokości, niewidoczny nawet jako odstęp. Przydaje się do łamania długich słów i adresów bez widocznego dzielenia.
- U+2800 (Braille Pattern Blank) – pusty znak brajlowski; działa tam, gdzie aplikacja wycina zwykłe i niełamliwe spacje, np. przy pustych liniach w wiadomościach.
Wklej znak (Ctrl+V) w nick, opis profilu albo wiadomość. Jeśli platforma odrzuca jeden znak, spróbuj kolejnego z listy – serwisy różnie filtrują Unicode, a gry często ograniczają liczbę znaków specjalnych w nicku.
Niewidzialne znaki – najczęstsze pytania
Czy „pusta wiadomość” naprawdę jest pusta?
Wizualnie tak, ale technicznie zawiera jeden lub więcej znaków Unicode, dlatego aplikacja pozwala ją wysłać. Część platform traktuje takie wiadomości jak spam i je blokuje, więc najpierw wyślij test do siebie.
Jaki niewidzialny znak wybrać, jeśli nie wiem?
Do tekstu i separatorów zacznij od U+200B. Do nicka lub pola, które nie przyjmuje „pustej” wartości, lepiej sprawdzają się U+3164 i U+2800, bo mają szerokość zwykłego znaku. U+200D i U+200C wybieraj tylko wtedy, gdy chodzi o łączenie znaków lub emoji.
Czemu po wklejeniu „nic nie ma”, a licznik znaków rośnie?
Licznik liczy znaki w tekście, a nie to, co widać. Niewidzialne znaki są pełnoprawnymi znakami, więc 10 × U+200B to dla systemu 10 znaków i 30 bajtów.
Jak sprawdzić, czy tekst zawiera ukryte znaki?
Wklej go w trybie „Oczyść tekst” lub w jednym z trybów wstrzykiwania. Pod polem pojawi się liczba wykrytych znaków z podziałem na typy, np. „1 × ZWSP (U+200B)”.
Dlaczego niektóre platformy usuwają niewidzialne znaki?
Bo walczą ze spamem i manipulacjami, np. pustymi komentarzami albo ukrywaniem słów przed filtrami. Generuj tyle znaków, ile potrzeba do efektu, i testuj na docelowej platformie.
Czy mogę użyć zapisu \uXXXX w kodzie?
Tak, to najczytelniejszy sposób. Znak wklejony „na żywo” do pliku łatwo zgubić albo przypadkiem usunąć, a zapis \u200B czy \u200D jest jednoznaczny w JavaScripcie, JSON-ie i logach.