从字符串中删除无法识别的ASCII字符

Dr_*_*man 0 c# string ascii

我正在使用HTML Agility Pack解析html,并且我不时会看到奇怪的字符串,如:"â€".删除它们的最简单方法是什么?顺便说一下,我正在使用C#.

Ale*_*lex 9

您可能需要首先考虑为什么要获得这些字符,编码可能会出现问题

但是如果你确实需要从字符串中删除所有非ascii字符,那么正则表达式[^ - 〜]就可以了

        var stripped = Regex.Replace("str?ipped of baâ€d charâ€cters", "[^ -~]", "");
        Console.WriteLine(stripped); //outputs "stripped of bad characters"
Run Code Online (Sandbox Code Playgroud)

请参阅http://www.catonmat.net/blog/my-favorite-regex/,了解正则表达式的工作原理