6
所以我试图用XPath解析一些WootAPI。我遇到的一个问题是,其中一些元素的名称中含有冒号,例如woot:price
或woot:condition
。现在,我想,尝试使用XPath //rss/channel/item/woot:price
将不会获取元素woot:price
的内容,因为冒号。无论如何,我能做些什么来得到它?使用XPath解析包含冒号的元素名称
所以我试图用XPath解析一些WootAPI。我遇到的一个问题是,其中一些元素的名称中含有冒号,例如woot:price
或woot:condition
。现在,我想,尝试使用XPath //rss/channel/item/woot:price
将不会获取元素woot:price
的内容,因为冒号。无论如何,我能做些什么来得到它?使用XPath解析包含冒号的元素名称
冒号是因为元素有一个名称空间前缀并绑定到Woot命名空间。
您应该阅读XML namespaces and how they affect XPATH and XSLT。
如果你想引用你的XPATH的活泉元素,你要么需要:
http://www.woot.com/
,这样当你使用你的XPATH命名空间前缀是可以理解的。local-name()
和namespace-uri()
来匹配元素。
//rss/channel/item/*[local-name()='price' and namespace-uri()='http://www.woot.com/']
1.知道如何做到这一点在Java中? 2.我尝试使用您提供的示例,但它不起作用。 :\ – Chiggins 2010-11-26 02:44:20