`
isiqi
  • 浏览: 16481792 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

使用xpath 在xml文档中定位[转载]

阅读更多
使用xpath xml文档中定位
[BO1--日积月累--7]使用xpath 在xml文档中定位
使用xpath 在xml文档中定位,就像在OS 中定位一个文件.
我们如何根据我们指定的条件来选择特定的node?条件怎么样下.
怎么样指定许多条件从而定位我们需要的节点.
大家畅所欲言!
结帖:根据大家对xpath的讨论,总结几点:
1. xpath 作用:在xml文档中定位一个node.
2. xpath的使用场合:xquery,xlink,xslt,xpoint等.
3. 目前xml的解析器一般都会支持xpath1.0语法. ref:王刚 上传的1.0 语法.或者到w3c 下载.
4. 使用具体某一方的xml 解析器时,最好看它本身的doc.
5. 其他资源: msxml4.0. xpath 2.0, little的 Stylus Studio 2006 Release 2 XML Home Edition 用于调试xpath语法.
[此贴子已经被作者于2006/6/14 上午 10:27:27编辑过]
先看看XPath会在哪里用到^_^
XPath is a language for finding information in an XML document. XPath is used to navigate through elements and attributes in an XML document.
XPath is a major element in the W3C's XSLT standard - and XQuery and XPointer are both built on XPath expressions.


此主题相关图片如下:
针对例子来说可能更清晰一些:
<?xml version="1.0" encoding="ISO-8859-1"?>
<books>
<book type=”hardback”>
<title>Atlas Shrugged</title>
<author>Ayn Rand</author>
<isbn>0525934189</isbn>
</book>
<book type=”paperback”>
<title>A Burnt-Out Case</title>
<author>Graham Greene</author>
<isbn>0140185399</isbn>
</book>
</books>
下面的XPath语句返回所有的book元素:
//books/book
下面的表达式返回所有标题为Atlas Shrugged的book元素。
/books/book[title=”Atlas Shrugged”]
符号@使得属性的使用更容易。下面的表达式查找所有的硬封面的书(也就是所有type属性值为hardback的书)
//book[@type=”hardback”]
方括号符号在XPath文档中称为谓词,方括号的另外一个用途是标识需要检索的项数,例如,使用下面的表达式从例子文档返回第一个book元素。
/books/book[1]
用通配符(*)可以很容易的检索到在根结点下的所有元素。下面的例子返回所有的book元素。
/books/*
下面的语句检索所有属性type值为hardcover或softcover的book元素。
//books/book[@type=”hardcover”] | //books/book[@type=”softcover”]
出个题目
XML:
<AAA>
<BBB/>
<BBB/>
<BBB/>
<BBB/>
<BBB/>
<BBB/>
<BBB/>
<BBB/>
<CCC/>
<CCC/>
<CCC/>
</AAA>
要选择中间的CCC元素
//ccc[ position() = floor(last() div 2 + 0.5) ]
timmy. 题目的要求是选择中间的元素,而上面的last()-1 是选择倒数第二个元素.
如果ccc元素的数量比较多,那么last()-1 就不对了!!!
Jammy:
先讲讲xpath一些概念吧,它能提供那些东西,在什么场合下使用它 ,还有什么要注意的地方
Dear arty:
timmy 给出了一图比较好:
我们在xslt,xquery,xpointer,xlink里面都会涉及到xpath.
最简单的selectSingleNode(xpathQurey),当然,可以在msxml4.0里面找到更多的使用xpath的地方.
一般xml的解析工具都会有支持w3c 提出的xpath 1.0语法.(如dom4j,以及ms 的解析器),至于2.0支持到什么程度,要看具体工具了.
分享到:
评论

相关推荐

    Java中使用xpath获取xml中的数据

    下面是一段简单的示例代码,展示了如何在Java中使用XPath获取XML数据: ```java import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.DocumentBuilder; import org.w3c.dom.Document; ...

    基于Xpath的xml文件查询和更新

    XML(eXtensible Markup ...总结来说,基于Xpath的XML文件查询和更新是XML处理的重要部分,它使得在复杂的数据结构中定位和操作数据变得简单高效。了解并熟练掌握Xpath和DOM操作,对于处理XML数据的开发工作至关重要。

    用XPath 表达式从 XML 文档中提取信息

    XPath,全称XML Path Language,是一种在XML文档中查找信息的语言。它被设计用来选取XML文档中的节点,如元素、属性、文本等。XPath表达式是用于定位这些节点的语句,它们允许开发者高效地从复杂的XML数据结构中提取...

    xpath读取XML节点

    XPath是XML文档中查找信息的语言,它允许我们高效地定位到XML文档中的特定节点,如元素、属性或文本。在Java编程中,JDOM库是一个流行的解析和操作XML的工具,它提供了对XPath的支持,使得我们可以方便地通过XPath...

    用XSLT和Xpath查询XML文档.doc

    - 数据检索:XPath用于在XML文档中快速定位所需数据,提高了数据提取的效率。 - 文档呈现:XSLT可以根据业务需求,将XML数据转换为用户友好的HTML页面或其他格式,适应不同终端和应用场景。 - 数据交换:XML作为...

    js中使用xpath来解析xml元素实用.pdf

    总结一下,JavaScript中使用XPath解析XML元素的关键知识点包括: 1. XPath是用于在XML文档中查找信息的语言,它基于路径表达式。 2. `selectNodes()`和`selectSingleNode()`方法在IE中用于选取XML节点,但不是标准...

    xslt与xpath入门转换xml文档与数据

    在处理XML文档时,XSLT(eXtensible Stylesheet Language Transformations)和XPath(XML Path Language)是两个重要的工具。 XSLT是用于转换XML文档的样式表语言,它的主要功能是将XML源文档转换成另一种XML格式,...

    《XSLT与XPath入门:转换XML文档与数据》 [PDF]

    XML内容管理应用程序的增长刺激了对XSLT和Xpath技能的要求.本入门教程提供了XSLT处理模型的基础,为开发者提供了重要的基本功. XSLT 是一种用于将 XML 文档转换为 ... XPath 是一种用于在 XML 文档中进行导航的语言。

    Xpath 解析xml文件转化为csv文件

    XPath是一种在XML文档中查找信息的语言,它是XML处理中的重要工具。XML(eXtensible Markup Language)是一种标记语言,常用于数据交换和存储。CSV(Comma Separated Values)文件则是一种简单、通用的数据格式,...

    Selenium WebDriver中使用By.Xpath快速定位页面元素

    在 Selenium WebDriver 中使用 By.Xpath 快速定位页面元素可以实现多属性定位一个元素。例如,在登录页面密码框定位中,可以使用 By.Xpath 来定位密码框,然后进行清空和输入密码操作。 使用 By.Xpath 定位页面元素...

    xpath解析xml

    XPath,全称XML Path Language,是一种在XML文档中查找信息的语言。它被设计用来选取XML文档中的节点,如元素、属性、文本等。XPath基于XPath 1.0规范,但随着技术发展,也有XPath 2.0和3.1等更新版本。在本篇文章中...

    使用路径表达式在 XML 文档中进行导航(xpath简介)

    ### 使用路径表达式在 XML 文档中进行导航 (XPath 简介) #### 一、XPath 的定义 XPath 是一种用于查找 XML 文档中的信息的语言。它使用路径表达式来选择 XML 文档中的节点或集合节点。XPath 被设计为 XSLT、...

    Dom4j结合XPath解析XML文件路径表达式

    总结来说,理解XPath的路径表达式以及如何在Dom4j中使用它们是处理XML文档的关键技能。掌握这两种路径类型,不仅可以精确地定位XML文档中的数据,还能提高代码的可读性和可维护性。在实际开发中,根据需求选择合适的...

    XSLT与XPath入门转换XML文档与数据

    - 学习如何使用XPath来定位XML文档中的特定节点,以及如何使用XPath表达式来选择节点集合。 - **第3章:模板、变量和参数** - 深入探讨XSLT中的模板机制,包括模式匹配和模板选择。 - 介绍变量和参数的概念及其...

    如何使用XPath提取xml文档数据

    XPath是一种路径语言,用于在XML文档中定位和选择节点。它由W3C组织制定的,旨在提供一种通用的、平台独立的方式来访问和操作XML文档数据。XPath语法简单易学,灵活多样,能够满足大多数的数据提取需求。 节点选择 ...

    C# XML处理中xpath使用文档

    以下是对XPath在C#中使用的一些关键知识点的详细说明: 1. **节点类型**: - **元素节点 (element)**:XML文档中的主要构造块,如`&lt;book&gt;`。 - **属性节点 (attribute)**:元素节点的属性,如`lang`在`...

    XPath官方文档 教程

    在这个“XPath官方文档教程”中,我们将深入学习XPath的基本概念、语法以及如何在实际应用中使用它。 一、XPath概述 XPath 1.0版本由W3C在2000年发布,后来又推出了XPath 2.0和3.1版本,增加了更多功能和表达能力。...

Global site tag (gtag.js) - Google Analytics