piapia123
en

Character Remover

Text

Everything runs locally in your browser — nothing is uploaded

Input
Drop a file here to load its contents
Output

Strip one family of characters out of a text, or flip it around and keep only that family. Six families work independently: Chinese characters, Latin letters, digits, punctuation, whitespace, and symbols including emoji. Every test uses Unicode properties rather than code point ranges. A range like `[\u4e00-\u9fff]` only covers the basic CJK block, so characters from the extension blocks slip through — and a character that was not removed is almost impossible to spot in the result. Digits use `\p{Nd}`, so full-width 0-9 count; letters use `\p{Script=Latin}`, so full-width A-Z count too. Line breaks survive whitespace removal. A line break is whitespace, but deleting it collapses a multi-line input into one line, which is rarely what someone asking to remove spaces has in mind. So the whitespace family is applied line by line and the tool keeps the line structure itself.

Features

  • Six independent families: Chinese characters, Latin letters, digits, punctuation, whitespace, symbols and emoji
  • A keep-only mode that works in reverse, handy for pulling one family out of mixed text
  • Chinese characters include the extension blocks, not just the basic CJK range
  • Full-width A-Z count as letters and full-width 0-9 as digits, because that is what Unicode says they are
  • Punctuation covers both scripts (a comma and an ideographic comma are both punctuation)
  • Removing whitespace keeps line breaks, so a multi-line input does not collapse
  • Works on grapheme clusters, so an emoji never leaves half a surrogate behind
  • Ticking nothing in keep-only mode raises an error instead of quietly returning an empty result
  • Everything runs locally in your browser; nothing is uploaded

How to use

  1. Paste the text into the input
  2. Choose Remove or Keep only, then tick the families you mean
  3. The result updates as you type; click Copy to take it

FAQ

Which family do full-width letters and digits belong to?
Full-width A-Z are Latin letters and full-width 0-9 are digits. That is not a special case, it is what they already are: in Unicode a full-width letter carries the Latin script property and a full-width digit is category Nd. So ticking letters removes `A` as well. Full-width punctuation such as the ideographic full stop is punctuation, not a letter or a digit.
I removed whitespace but the line breaks are still there. Why?
Because line breaks are deliberately protected. They are whitespace, but deleting them would collapse a multi-line input into a single line, and someone asking to remove spaces usually wants the blanks gone, not their paragraph structure dismantled. To remove the line structure as well, the merge-lines tool says that more directly.
What is the difference between Remove and Keep only?
The two are exactly complementary: for the same input, what Remove drops and what Keep only drops add up to the whole text. To pull the Chinese characters out of mixed text, use Keep only; to get rid of them, use Remove. Note that ticking nothing in keep-only mode would empty the text, so that combination raises an error rather than silently returning nothing.

Related tools