libxml2 xpath 解析含有 prefix namespace 的 xml

本文讨论了在XML文件中使用XPath解析遇到的问题,特别是当XML文件包含命名空间时如何正确地使用XPath来定位特定元素。通过实践示例,作者分享了解决该问题的方法,即在XPath表达式中明确指定命名空间前缀,从而成功地从XML文档中获取所需的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有一段xml 里面有 prefix  URL namespace的 , 这时用xpath解析 像平常那样写解析不出来节点

 

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <soapenv:Body>
  <GetTokenResponse xmlns="urn:LBaseComponents">
   <Timestamp>2012-11-06T05:04:55.256Z</Timestamp>
   <Ack>Success</Ack>
   <AuthToken>xxxxx</AuthToken>
  </GetTokenResponse>
 </soapenv:Body>
</soapenv:Envelope>
 

google了一下 最后用

 

@"//*[local-name()='AuthToken'] "

 

 解决了

 

文章 link: http://www.velocityreviews.com/forums/t169475-xpath-and-namespaces-a-newbie-question.html

 

还找到一个在线的xpath test 站点   http://www.xpathtester.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值