C# 从XML中删除字符的正则表达式(返回的是funky格式的XML)

C# 从XML中删除字符的正则表达式(返回的是funky格式的XML),c#,xml,regex,C#,Xml,Regex,我正在使用Universe数据库从文件中检索一些XML,出于某种原因,它会返回如下内容: <RESPONSE InternalAccountIdentifier=\"ZZMTGBLDR\" /> 我需要删除=之后和结束引号之前的。这是实际返回的xml,我需要解析它 有谁能帮我写一个正则表达式,这样我就可以替换它的所有实例,并为属性提供干净的值 我对正则表达式完全陌生,不完全理解如何编写它们。我一直在尝试执行xml.Replace@=\、=和xml.Replace@\,其中xml是我

我正在使用Universe数据库从文件中检索一些XML,出于某种原因,它会返回如下内容:

<RESPONSE InternalAccountIdentifier=\"ZZMTGBLDR\" />
我需要删除=之后和结束引号之前的。这是实际返回的xml,我需要解析它

有谁能帮我写一个正则表达式,这样我就可以替换它的所有实例,并为属性提供干净的值

我对正则表达式完全陌生,不完全理解如何编写它们。我一直在尝试执行xml.Replace@=\、=和xml.Replace@\,其中xml是我返回的xml字符串

但是我不能让它工作,我想正则表达式可以解决我的问题

您可以尝试使用下面的c代码删除\after=符号以及右引号前面的\符号

string str = @"<RESPONSE InternalAccountIdentifier=\""ZZMTGBLDR\"" /> \""foo bar"" ";
string remove = Regex.Replace(str, @"(""[^""]*)\\""", "$1\"");
string result = Regex.Replace(remove, @"(?<==)\\", "");
Console.WriteLine(result);
Console.ReadLine();

你能用你迄今为止尝试过的代码编辑你的帖子,以便我们能帮助你吗?请确认你显示的是实际值,而不是你在debugger中看到的值。Alexei,我认为你可能是正确的。我刚刚研究了一下,显然VS debugger在查看字符串时会在引号之前显示反斜杠。您是否尝试用另一个反斜杠来转义反斜杠?