TextArray
100% local

Remove characters

Strip specific characters, whole character classes or regex matches from text.

Input
Output

Remove characters

Paste your text, say which characters have to go, and the cleaned result appears as you type. This tool is built for the small clean-ups that hold up real work: stripping dashes and brackets out of phone numbers, pulling currency symbols off a spreadsheet column, deleting the invisible junk that tags along when you copy from Word, Google Docs or a PDF, or cutting a messy product name down to something safe for a filename.

There are three ways to say what should go. Type characters into the field to delete exactly those — the list is literal, so a hyphen is just a hyphen and nothing is interpreted as a pattern. Switch to keeping only the listed characters to work the other way round and whitelist what you trust, which is the quickest route from free text to plain digits or plain letters. The presets handle the common jobs in one click: everything that is not a letter or digit, digits, letters, punctuation and symbols, or invisible and control characters such as zero-width spaces and byte-order marks. Regex mode is there when a pattern describes the target better than a list does.

Two guards are on by default. Keeping spaces and keeping line breaks protects whitespace in every mode, including inside a regex match, so a preset can never collapse your text into a single blob. Switch them off when the whitespace should go too. Matching case applies to the character list and to the pattern; the presets work by Unicode category, so case never enters into them.

Everything runs in your browser and nothing is uploaded, so internal exports and customer data are safe to paste here. The tally under the output shows how many characters went in, how many came out and how many were removed.

FAQ

What counts as an invisible character?
Zero-width spaces and joiners, soft hyphens, byte-order marks, and control codes — the characters that survive a copy from Word or a PDF and then break a CSV import or a database key. Spaces, tabs and line breaks are ordinary whitespace and stay put unless you switch the two keep options off.
How do I keep only the digits?
Choose "Keep only listed characters" and type 0123456789 into the field. Removing letters does a similar job, but the whitelist is stricter: anything you did not list goes, including symbols you forgot about.
Why did my emoji fall apart?
Combined emoji such as families and flags are held together by zero-width joiners, which the invisible-characters preset removes by design. The pieces then show up separately. If you want the emoji gone entirely, list them in the field or use the remove emoji tool instead.
Are there limits on the regular expression?
The pattern is capped at 200 characters, because a longer one can backtrack badly enough to freeze the tab. Patterns run in Unicode mode, so \p{L} and other property escapes work and an emoji is never cut in half; the trade-off is that a loose escape such as \- outside a character class counts as invalid. An invalid pattern shows a message instead of an empty output, so you can fix the syntax as you type.
Is my text uploaded anywhere?
No. The tool runs entirely in your browser and your text never leaves your device.