如何从UTF8字符串中删除控制字符

时间:2010-12-21 15:28:13

标签: .net regex vb.net utf-8

我有一个处理文档内容的VB.NET程序。 该程序将大量文档处理为“批处理”(> 2Million文档;总共1TB卷) 其中一些文档可能包含控制字符或字符,如f0e8(http://www.fileformat.info/info/unicode/char/f0e8/browsertest.htm)。

是否有一种简单且特别快速的方法来删除这些字符?(空格,换行符,制表符除外) 如果答案是正则表达式:有人为我提供完整正则表达式吗?

谢谢!

2 个答案:

答案 0 :(得分:16)

尝试

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

这将从您的字符串中删除所有“其他”Unicode字符(控制,格式,私用,代理和未分配)。

答案 1 :(得分:0)

以下是控制字符的POSIX正则表达式:[:cntrl:],来自维基百科上的Regular Expression