2017-06-14 63 views
0

我有以下XML结构的节点:由评论:如何获得他的子节点有一定的价值

<?xml version="1.0" encoding="UTF-8" ?> 
<rss> 
    <channel> 
     <item> 
      <title>Some Title</title> 
      </wp:comment> 
       <wp:comment_approved><![CDATA[1]]></wp:comment_approved> 
      </wp:comment> 
      </wp:comment> 
       <wp:comment_approved><![CDATA[1]]></wp:comment_approved> 
      </wp:comment> 
     </item> 
    </channel> 
</rss> 

我可以很容易地得到所有WP

xmlNode.SelectNodes("*[name()='wp:comment']") 

但我怎么能得到所有wp:评论其中wp:comment_approved的值为1?

+3

示例XML是无效的,在一些地方前/'WP:评论'太多了。 –

回答

1

它的更新@Stefan Hegny答案,因为你不必comment_approved元素,但wp:comment

xmlNode.SelectNodes("//*[name()='wp:comment'][./*[local-name() = 'comment_approved' and . = '1']") 

我不知道,如果默认的CSS定位器在这里工作,但在共同的CSS的XPath我会用这个定位器(逻辑很简单 - 你SEACH一些元素,包含元素有特殊参数,所以你可以调整这个定位您的需要):

//someTag[./innerTag[text() = '1']]