从字符串中删除XML

时间:2017-01-10 00:17:00

标签: c# regex xml asp.net-mvc xml-rpc

我正在调用一些XMLRPC API,有时候我会得到一些“脏”的响应。脏响应意味着与XML一起返回一些其他内容/ html,如:

<div>Some Html maybe> Or some additional string is here
<?xml version="1.0" encoding="ISO-8859-1"?>
<methodResponse>
   <params>
      <param>
         <value><int>30</int></value>
      </param>
   </params>
</methodResponse>

我需要一种方法来抛弃任何不是XML的东西,只读取字符串响应中的XML,所以从上面的响应我只得到:

<?xml version="1.0" encoding="ISO-8859-1"?>
<methodResponse>
   <params>
      <param>
         <value><int>30</int></value>
      </param>
   </params>
</methodResponse>

如果有人提供仅清理HTML并且至少只留下XML的代码,那么没有任何帮助。首选C#中的代码

1 个答案:

答案 0 :(得分:0)

尝试使用this的变体或可能使用XSLT来过滤您从API返回的响应,类似于this。过滤XSLT时,XML实际上是非常强大的功能。我知道 Visual Studios 不支持XSLT V.2,但是如果你可以在另一个编辑器中使用V.2那么它很安静。