TextWash

This page finds and removes U+200B ZERO WIDTH SPACE. The sample below already contains two — see them flagged in the x-ray, copy the cleaned output. Everything runs in your browser — nothing is uploaded.

Input

X-ray hover a highlight for details

Cleaned output copied ✓

Cleaning rules

What is U+200B (zero-width space)?

A character that takes up no visual space at all. It exists to mark places where long words may break across lines. Because it renders as nothing, you can't see it, select it reliably, or notice it in a code review — which is exactly why it causes so much confusion.

Where it comes from

Copying code or text from web pages (some sites insert ZWSP as line-break hints inside long strings), chat apps, PDFs, word processors, and AI chat interfaces. Some services even use zero-width characters deliberately to watermark text.

What it breaks

Compilers and interpreters reject it with errors that point at a line that looks perfectly fine: Go says invalid character U+200B, Python raises SyntaxError: invalid non-printable character U+200B, JavaScript throws SyntaxError: Invalid or unexpected token. Outside code it breaks string comparison ("why doesn't abc equal abc?"), database lookups, search-and-replace, and pasted shell commands.

How to find it in your editor

VS Code renders ZWSP with a highlighted box by default (setting editor.unicodeHighlight). To search for it, enable regex mode and search \u200b. On the command line: grep -rP '\x{200B}' . and remove with sed -i 's/\xe2\x80\x8b//g' file. Or just paste the offending text above — every ZWSP is flagged, and the cleaned output has them removed.