加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XPath总结

发布时间:2020-12-16 08:23:49 所属栏目:百科 来源:网络整理
导读:XPath(XML路径语言),是查询XML元素和属性位置的语言,用路径表达式来选取XML元素或属性。 1、XPath语法 XPath语法 说明 / 从根元素选取 // 从全文档选取 . 当前元素 .. 父元素 @ 属性 * 匹配任何元素 @* 匹配任何属性 node() 匹配任何类型元素 2、XPath实例

XPath(XML路径语言),是查询XML元素和属性位置的语言,用路径表达式来选取XML元素或属性。

1、XPath语法

XPath语法 说明
/ 从根元素选取
// 从全文档选取
. 当前元素
.. 父元素
@ 属性
* 匹配任何元素
@* 匹配任何属性
node() 匹配任何类型元素

2、XPath实例

Xml文档(ABCD.xml)

<A>
    <B id='b'>
        <C id='c'>
            <D>xxx</D>
        </C>
    </B>
    <B>
        <C>
            <D>ddd</D>
        </C>
    </B>    
</A>
XPath实例 说明
/A/B/C 所有A下的B下的所有CCC元素
/A/B/* A下B下所有元素
/A/B[2] A下第二个B元素
/A/B[last()] A下最后一个B元素
//A 全文档所有A元素
//* 全文档所有元素
//@id 所有名为id的属性
//B[@id] 所有具有id属性的B元素
//B[@*] 所有具有属性的B元素
//B[not(@*)] 所有不存在属性的B元素
//B[@id=’b’] 所有属性值为b的B元素

3、JavaScript应用Xpath的实例

<!DOCTYPE html>
<html><body><script> // 加载Xml文档,针对大多数浏览器 var xmlhttp=new XMLHttpRequest(); // 针对IE浏览器(被微软淘汰了) var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");  xmlhttp.open("GET","ABCD.xml",false); xmlhttp.send(""); xmlDoc = xhttp.responseXML; // 选取节点,针对大多数浏览器 xpath = "/A/B/C/D"; var nodes = xmlDoc.evaluate(xpath,xmlDoc,null,XPathResult.ANY_TYPE,null); // 针对IE浏览器(被微软淘汰了) xmlDoc.selectNodes(xpath);  // 输出结果 document.write(nodes[0].childNodes[0].nodeValue); </script></body></html>

GitHub博客:http://lioil.win/2017/01/13/XPath.html
Coding博客:http://c.lioil.win/2017/01/13/XPath.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读