Show spaces, tabs, line breaks, and zero-width characters that hide in a paste.
1
Some Unicode characters take no visible space, or look like a normal space. A no-break space, a zero-width space, or a byte order mark can make two strings fail a comparison that looks obvious.
This page replaces a known set of those characters with a token, and counts them. A line feed is shown as ↵ and then a real line break, so the paragraph shape stays.
a b
a·b
U+00A0 between the words
a[NBSP]b
Paste the tokens into the original file
Use the tokens to find the character, then edit the source
The page does not flag every format character in Unicode. It flags space, tab, CR, LF, no-break space, soft hyphen, the zero-width trio, LRM, RLM, line and paragraph separators, word joiner, and BOM.
Windows CRLF is two characters: ␍ then ↵. A lone LF is only ↵.
U+200D ZERO WIDTH JOINER is what holds an emoji sequence together. Replacing it with [ZWJ] shows the joiner, and the sequence will not render as one glyph in the marked text.
The share link stores the original text, not the tokens. Opening the link marks it again. Anyone who has the link can read that text.
U+FEFF was the byte order mark in Unicode. The Unicode Standard now uses it as a zero-width no-break space as well, and warns that a leading U+FEFF is a signature, not a character of the text.
U+00A0 NO-BREAK SPACE has been in Unicode since version 1.0 in 1991. A word processor often inserts it when you type a space that must not wrap, and it survives a copy into a text field.