Mimefilt
Mimefilt

Reputation: 670

How to remove control chars from UTF8 string

i have a VB.NET program that handles the content of documents. The programm handles high volumes of documents as "batch"(>2Million documents;total 1TB volume) Some of this documents may contain control chars or chars like f0e8(http://www.fileformat.info/info/unicode/char/f0e8/browsertest.htm).

Is there a easy and especially fast way to remove that chars?(except space,newline,tab,...) If the answer is regex: Has anyone a complete regex for me?

Thanks!

Upvotes: 7

Views: 10242

Answers (2)

Tim Pietzcker
Tim Pietzcker

Reputation: 336128

Try

resultString = Regex.Replace(subjectString, "\p{C}+", "");

This will remove all "other" Unicode characters (control, format, private use, surrogate, and unassigned) from your string.

Upvotes: 17

Geoffrey
Geoffrey

Reputation: 5432

Here is the POSIX regex for control characters: [:cntrl:], from Regular Expression on Wikipedia.

Upvotes: 0

Related Questions