我需要将下面的信息分开,只取出XML,我正在努力找出最有效的方法。我不确定从删除前3行和获取XML DTD开始的方法。在我脑海中,我认为最好的方法是忽略/删除3行,直到使用'<'打开XML标记。但我不确定我是否应该把它放在一根巨大的绳子里?老实说,任何事情都会有所帮助,我不知道要把这个坏孩子搞得一团糟,而且我确信它不会像我要做的那么难,但我被卡住了。非常感谢你!
编辑:这是一个.log文件
这是示例文本文档:
VCS (1.0.11.111): [10/9/2015 12:00:02 AM]
POST https://ex.sample.com/samp/x/sample
Content-Type: application/x-www-form-urlencoded
<?xml version="1.0" encoding="UTF-8"?>
<command name="sample name_" signature="some stuff" address="sample.com">
<param name="CurrentVersion">1111</param>
<param name="MotherboardName">Dell Inc. PowerEdge R420</param>
</command>
HTTP/1.1 200 OK
答案 0 :(得分:0)
答案 1 :(得分:0)
使用正则表达式怎么样?试试这个:
var regex = new Regex(@"<\?xml.*\?>(?<Xml>.*)HTTP/", RegexOptions.Singleline);
var match = regex.Match(inputString);
if (match.Success)
{
var xmlResult = match.Groups["Xml"].Value;
}
您将在变量xmlResult
中拥有所有xml。