如何在 xml c# 中替换非 ascii 西方拉丁字符,如 '┌''├''⌐''┐''┴'

how to replace non-ascii Western Latin characters like '┌''├''⌐''┐''┴' in xml c#

如何在 xml c#

中删除非 ASCII 字符,如倒置的 ''T'' 、 "L" 等

我试过清理 Xml 字符串,例如

(character >= 0x20 && character <= 0xD7FF) ||
(character >= 0xE000 && character <= 0xFFFD) ||
(character >= 0x10000 && character <= 0x10FFFF)

并使用正则表达式如下:

Regex.Replace(inputText, @"[^><#\w\.@-]", "");
(or)
string str = str.replace(/[^A-Za-z 0-9 \.,\?""!@#$%\^&\*\(\)-_=\+;:<>\/\\|\}\{\[\]`~]*/g, '')

Pattern 替换如下:

string pattern = @"#x((10?|[2-F])FFF[EF]|FDD[0-9A-F]|7F|8[0-46-9A-F]9[0-9A-F])";

最后

XmlConvert.VerifyXmlChars(text);

但是没有用,字符如下所示: '┌''├''⌐''┐''┴'

请看这个link https://en.wikipedia.org/wiki/Western_Latin_character_sets_%28computing%29

└ U+2514 C0 C0
┘ U+2518 D9 D9

请帮我解决这个问题。提前致谢

Try This

string s = "søme string";
s = Regex.Replace(s, @"[^\u0000-\u007F]", string.Empty);