C# 正则表达式将“仅当它不在另一个中时”替换为“仅当它不在另一个中时”
我正在转换为它的原始格式C# 正则表达式将“仅当它不在另一个中时”替换为“仅当它不在另一个中时”,c#,regex,xml,C#,Regex,Xml,我正在转换为它的原始格式 string myXml = oldXml.Replace("<", "<").Replace("&", "&") .Replace(">", ">") .Replace(""", "\"
string myXml = oldXml.Replace("<", "<").Replace("&", "&")
.Replace(">", ">")
.Replace(""", "\"")
.Replace("'", "'");
编码XML
替换后恢复的XML
正如你所看到的,内部不应该被转换成。那么我如何用正则表达式替换它,使它不会替换内部呢
谢谢原来我不需要恢复编码的XML 由于nodeElement.SetAttributemyXmlAttribute,myXml;首先对原始Xml进行编码,因此当我读取属性值并将其分配给字符串时,C将自动恢复原始Xml
string content = theNode.Attributes["myXmlAttribute"].Value;
我不需要做任何替换。首先是什么编码的?如果可能的话,我会在源代码处解决这个问题。如果它编码了&to&;,那就好了。事实上,它没有这样做,这表明编码部分总体上坏得很厉害…@JonSkeet.Net在我输入时会自动执行,我希望它能正确执行,不是吗hen.请提供一个简短但完整的原因示例。添加到@JonSkeet中,编码的XML应该如下所示:title=a“title”,如果是这样,您的解码器会工作,尽管我会使用一个官方实现…@AlexJolig例如
<v:shape id="_x0000_i1025" title="a" title "b"> </v:shape>
//Note the title value
<v:shape id="_x0000_i1025" title="a" title "b"> </v:shape>
string content = theNode.Attributes["myXmlAttribute"].Value;