Text Cleaner
This text cleaner combines the individual tidy-up operations into a single pass, and runs them in an order that actually works. That ordering is the point: invisible characters are stripped first, then whitespace is normalised, then accents and punctuation if you want them gone, and duplicate lines are removed last — because de-duplicating before normalising would leave two lines differing only by a trailing space looking distinct, and both would survive. Every step is a separate toggle, so you can build exactly the cleanup a particular mess needs rather than accepting a fixed recipe.
How it works
Runs several cleanups in one pass, in a sensible order: invisible characters first, then whitespace, then accents and punctuation, then duplicate lines last so it compares text that has already been normalised.
That ordering matters. Removing duplicates before normalising whitespace would leave two lines that differ only by a trailing space looking distinct, and they would both survive.
Everything runs in your browser — nothing you paste is sent to a server.
0 lines in · 0 out · 0 characters.
The order the steps run in
- Invisible characters — first, because everything after this compares text, and an invisible character would make two identical-looking strings differ.
- Whitespace — collapse runs, trim ends, optionally drop blank lines.
- Accents — after whitespace, so the comparison later sees normalised letters.
- Punctuation — same reason.
- Duplicate lines — last, so it compares text that has already been fully normalised.
Run in any other order, the result is subtly wrong in ways that are hard to spot: duplicates that were not removed, or lines that differ only by whitespace surviving as distinct entries.
Building the right cleanup
For a list pasted from an email: whitespace, blank lines and duplicates. For a search key or slug: add accents and punctuation. For debugging a comparison that should be matching: invisible characters alone will usually find it.
Frequently asked questions
What does the text cleaner do?
It runs several cleanups in one pass: invisible characters, whitespace, blank lines, accents, punctuation and duplicate lines. Each is a separate toggle.
Why does the order matter?
De-duplicating before normalising whitespace would treat two lines differing only by a trailing space as distinct, so both would survive. Normalising first means the comparison sees the text as a reader would.
What are invisible characters?
Zero-width spaces, byte order marks, soft hyphens and directional marks. They are common in text copied from PDFs and web pages, and they break comparisons and searches in ways nothing on screen explains.
Should I remove accents and punctuation?
Only when building keys, slugs or search indexes. For text a person will read, both change meaning — leave them off.
Is duplicate removal case-sensitive?
No. Lines differing only in capitalisation are treated as duplicates, which is usually what you want when cleaning a pasted list.
Is anything uploaded?
No. Every step runs in your browser.