XPath 实例
在本节,让我们通过实例来学习一些基础的 XPath 语法。
XML实例文档
我们将在下面的例子中使用这个 XML 文档:
"books.xml" :
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.00</price> </book> <book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <book category="WEB"> <title lang="en">XQuery Kick Start</title> <author>James McGovern</author> <author>Per Bothner</author> <author>Kurt Cagle</author> <author>James Linn</author> <author>Vaidyanathan Nagarajan</author> <year>2003</year> <price>49.99</price> </book> <book category="WEB"> <title lang="en">Learning XML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore>
节点选取
我们将使用微软的 XML DOM 对象来载入 XML 文档,并使用 selectNodes() 函数从 XML 文档选取节点:
set xmlDoc=CreateObject("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.load("books.xml") xmlDoc.selectNodes(路径表达式)
选取所有的 book 节点
下面的这个例子选取了 bookstore 元素下所有的 book 节点:
xmlDoc.selectNodes("/bookstore/book")
假如您正在使用 IE 5 或更高的版本,可以亲自试一试。
选取第一个 book 节点
下面的例子仅选取 bookstore 元素下第一个 book 节点:
xmlDoc.selectNodes("/bookstore/book[0]")
假如您正在使用 IE 5或更高的版本,可以亲自试一试。
注释:IE 5 和 6 会把 [0] 作为第一个节点来执行,但是根据 W3C 的标准,应该使用 [1] !!
注释:这个问题在 IE 6 SP2 中被纠正了!
选取 price
下面的例子从所有的 price 节点选取文本:
xmlDoc.selectNodes("/bookstore/book/price/text()")
假如您正在使用 IE 5 或更高的版本,可以亲自试一试。
选取价格高于 35 的 price 价格
下面的例子会选取所有价格高于 35 的 price 节点:
xmlDoc.selectNodes("/bookstore/book[price>35]/price")
假如您正在使用 IE 5 或更高的版本,可以亲自试一试。
选取价格高于 35 的 title 节点
下面的例子会选取所有价格高于 35 的 title 节点:
xmlDoc.selectNodes("/bookstore/book[price>35]/title")
假如您正在使用 IE 5 或更高的版本,可以亲自试一试。
相关推荐
DOM4j支持SAX和DOM解析器,同时也提供了XPath查询支持,使得在XML文档中查找特定数据变得简单。 接下来,Apache POI是Apache软件基金会的一个开源项目,主要负责处理Microsoft Office文件格式,如XLS、XLSX、DOC和...
3. **XPath和XSLT**:XPath用于在XML文档中查找信息,XSLT则用于转换XML文档的结构。 结合Excel和XML 在某些情况下,可能需要将Excel数据转换为XML,以利用XML的结构化优势,例如用于Web服务或集成到其他系统。这个...
在IT行业中,处理数据转换和整合是常见的任务之一。在这个案例中,我们将探讨如何使用Java的JDOM库解析XML文件,然后借助JXL库将提取的数据写入Excel工作表。以下是对这一技术实现的详细解释。 首先,让我们了解XML...
接下来,我们介绍DOM4J,这是一个强大的Java XML处理库,提供了读写XML、XPath查询以及XML文档的操作等功能。当需要将Excel数据转换为XML时,DOM4J可以帮助我们构建XML文档的树形结构。下面是一个简单的例子,展示了...
此外,如果你的XML文件结构复杂,可能需要使用XPath或LINQ to XML来提取和操作数据。 至于压缩包内的"1.xls"文件,这通常是一个Excel电子表格,可能用于存储测试数据。在C#中,可以使用Microsoft.Office.Interop....
XPath是XML路径语言,它提供了一种在XML文档中查找信息的方法,比如节点、属性和值。 标签“在线字典”可能意味着这些文件中的某些部分涉及到创建或使用一个在线的词汇查询系统,可能使用了XML来存储和组织词汇数据...
2. **创建DOMXPath对象**:接着,我们创建DOMXPath对象,并指定DOMDocument实例作为上下文。 ```php $xpath = new DOMXPath($doc); ``` 3. **查询XML**:使用DOMXPath对象的query方法执行XPath表达式,返回一个...
它提供了XML的解析、文档对象模型(DOM)、简单API(SAX)以及XPath的支持。DOM4J可以用来读取、写入、修改和操作XML文件,其API简洁易用。 3. XMLBeans(xmlbeans-2.6.0.jar): - XMLBeans是一种基于XML Schema...
XPath(XML Path Language)是用于在XML文档中定位信息的路径表达式语言,而XQuery则是一种更强大的查询语言,能够处理复杂的XML数据结构。这些查询技术使得从大型XML文档中提取特定信息变得容易。 SAX(Simple API...
压缩包中的"1.xls"文件可能是一个数据源,可能被用来生成XML,或者作为转换后的结果存储。在实际项目中,可能需要将Excel数据导入到XML,然后再用上述方法转换为List。 总的来说,这个实例代码展示了如何使用C#的...
2. **JXL对Excel读写**:JXL是Java中广泛使用的库,用于读取和写入Excel文件(.xls格式)。它可以处理单元格的值、样式、公式等。例如,你可以创建一个新的`Workbook`对象来写入数据,或打开一个现有的`Workbook`...
2. **解析XML数据**:一旦XML文件被加载,你可以遍历XML节点来获取所需的数据。例如,使用XPath选择特定节点: ```csharp XmlNodeList nodeList = doc.SelectNodes("//YourXPathExpression"); foreach (XmlNode ...
例如,你可以使用`DocumentFactory.createDocument()`创建新文档,`Element`类来操作元素,`Attribute`类处理属性,以及`XPath`表达式进行查询。 其次,Excel文件常用于存储表格数据,通常使用Apache POI库进行解析...
TQImport3XMLDoc Import data from generic XML files using XPath and DataLocation (tlAttributes, tlSubNodes) TQImport3XLSx Intended for importing the MS Excel 2007 sheets TQImport3Docx Import data from ...
TQImport3XMLDoc Import data from generic XML files using XPath and DataLocation (tlAttributes, tlSubNodes) TQImport3XLSx Intended for importing the MS Excel 2007 sheets TQImport3Docx Import data from ...
在实际应用中,XSLT经常与XPath(XML Path Language)结合使用,XPath是一种查询语言,用于在XML文档中查找信息。通过XPath表达式,XSLT可以定位到XML文档的任何部分。 如果`ssw`是压缩包内的一个文件,可能是XML...
- **lxml**: 一个高效且功能强大的HTML/XML处理库,支持XPath查询。 - **cssselect**: 用于CSS选择器的库,方便选取HTML元素。 - **pyquery**: 类似于jQuery的Python库,用于DOM操作。 - **BeautifulSoup**: 虽然...
6. xml-apis-1.0.b2.jar:这个库包含了XML相关的API接口,如DOM、SAX和XPath,是处理XML文档的基础组件。 7. commons-codec-1.5.jar:Apache Commons Codec库提供了各种编码和解码算法,如Base64和Hex,可能会在...
- `jaxen-1.1-beta-2.jar`:提供XPath表达式引擎,用于在XML文档中查找特定数据。 - `xbean_xpath.jar`:与XPath相关的辅助库,可能用于Apache POI中的XML处理。 - `RELEASE_NOTES.txt`:包含了该版本的发布说明,...