Skip to content
TextArray
100% local

Invisible character detector

Find hidden Unicode characters in text and highlight, remove or replace them.

Input
Output

Invisible character detector

Text that looks clean can carry characters you cannot see. Copy from a chat assistant, Word, a PDF or a web page and zero-width spaces, non-breaking spaces, soft hyphens and direction marks ride along — then a CSV import fails, two identical-looking strings refuse to match, code breaks on a character the editor doesn't show, or a search misses the obvious. This detector makes the hidden layer visible and gets rid of it.

Paste your text and every invisible character is marked in place with a token like ⟨U+200B⟩, so you see exactly where each one sits. Below the text, a summary lists every character that was found with its Unicode code point, name and count — zero width space × 3, no-break space × 2 — so you know what you are dealing with before you change anything.

Switch the action to remove to strip every hidden character, or to replace with space to turn space-like characters such as non-breaking and thin spaces into ordinary spaces while zero-width characters vanish entirely — that keeps words from gluing together. Non-breaking spaces are often intentional typography, so a separate switch protects them. Detected are zero-width spaces and joiners, the byte-order mark, soft hyphens, bidirectional marks and overrides, exotic Unicode spaces, the hangul filler, the braille blank and control codes; tabs and line breaks are structure, not junk, and are left alone.

Everything runs in your browser and nothing is uploaded. The tally shows how many invisible characters were found, of how many kinds, and the total character count.

FAQ

Where do invisible characters come from?
Word processors and layout engines insert non-breaking spaces and soft hyphens for typography, files start with a byte-order mark, and text copied from chat assistants or web pages often carries zero-width spaces — sometimes deliberately, as a watermark or to slip past filters. They all survive copy and paste.
What is the difference between Remove and Replace with space?
Remove deletes every detected character outright, which can glue words together when a non-breaking space sat between them. Replace with space turns space-like characters — non-breaking, thin, ideographic spaces and similar — into a regular space and removes only the zero-width ones, so word boundaries survive.
Why does the tool flag my emoji?
Combined emoji such as families and profession emoji are held together by zero-width joiners (U+200D), which the detector reports honestly. Removing them splits the emoji into its parts. Run highlight first, and if the joiners belong to emoji you want to keep, leave that text as it is.
Can invisible characters be a security problem?
Yes. Right-to-left overrides can visually reverse part of a filename or URL so "gpj.exe" reads as "exe.jpg", and bidirectional overrides in source code can make it review differently than it compiles. The summary names each direction mark it finds, so this kind of trick has nowhere to hide.
Is my text uploaded anywhere?
No. The tool runs entirely in your browser and your text never leaves your device.