这一节是xpath的核心函数库知识
xpath核心函数库
节点集合函数
last()返回一个数字,该数字等于从表达式求值上下文中的上下文大小
position()函数返回一个数字,该数字等於从表达式求值上下文中的上下文位置
count(node-set)函数返回在参数node-set中节点的个数
id(object)通过元素的唯一的ID选择他们
local-name(node-set?)返回一个节点的扩展名的局域部分
namespace-uri(node-set?)返回依照文档顺序参数节点集合中的第一个节点的扩展名的命名空间URI,除了元素节点和属性节点外函数namespace-uri返回的字符串将为空
name(node-set?)返回一个字符串,字符串包含一个QName,它代表依照文档顺序参数节点集合中的第一个节点的扩展名,除了元素节点和属性节点外,由name函数返回的字符串将与local-name函数返回的字符串一样
字符串函数
string(object?)函数将对象转换成字符.
concat(string,string,string*)函数返回它的参数的联结
starts-with(string,string)如果第一个字符串参数以第二个字符串参数起头,starts-with函数返回真,否则,返回假
contains(string,string)如果第一个字符串参数包含第二个字符串参数,contains函数返回真,否则,返回假
substring-before(string,string)函数返回第一个字符串参数在第二个参数首次出现之前的子字符串,或者,如果第一个字符串参数不包含第二个字符串参数则返回空字符串。例如,substring-before("1999/04/01","/")返回1999
substring-before(string,string)函数返回第一个字符串参数在第二个参数首次出现之前的子字符串,或者,如果第一个字符串参数不包含第二个字符串参数则返回空字符串。例如,substring-before("1999/04/01","/")返回1999
substring(string,number,number?)函数返回第一个字符串参数从第二个参数所指定的位置开始,以第三个参数为长度的子字符串。例如,substring("12345",2,3)返回"234"。如果没有第三个参数,则返回从第二个参数所指定的位置开始直到结束。例如,substring("12345",2)返回"2345"
string-length(string?)返回字符串中字符的个数
normalize-space(string?)函数返回空白符规范化后的参数字符串,该规范化是清除领头及结尾的空白字以及用一个空白符替换连续的空白符
translate(string,string,string)函数返回第一个参数的字符串,其中有在第二个参数中出现的字符都被在第三个参数中相对应位置的字符所替换。例如,translate("bar","abc","ABC")返回字符串BAr。如果,第二个参数里的字符在第三个参数的相对应位置没有字符(因为第二个参数里的字符串比第三个参数的字符串长),那么,第一个参数里的那个字符将被移去。例如,translate("--aaa--","abc-","ABC")返回"AAA"。如果在第二个参数里的字符出现超过一次,那么,第一次的出现决定替换的字符。如果第三个参数里的字符串比第二个参数的字符串长,那么,多余的字符将被忽略
布尔函数
boolean(object)
not(boolean)
true()
false()
lang(string)
数字函数
number(object?)函数参数依下列各项转换成数字
sum(node-set)对於在参数节点集合的每个节点,sum函数返回节点字串值转换成数字后的和
floor(number)函数返回不大於参数的整数的最大数(最接近于正无穷大)
ceiling(number)函数返回不小於参数的整数的最小数(最接近于负无穷大)
round(number)函数返回最接近于参数的整数。如果有两个这样的数字,那么,返回最接近于正无穷大的那个。如果参数是NaN,那么返回 NaN。如果参数是正无穷大,那么返回正无穷大。如果参数是负无穷大,那么返回负无穷大。如果参数是正零,那么返回正零。如果参数是负零,那么返回负零。如果参数小於零,但大於或等於-0.5,那么返回负零。
参照规范
XMLSeeSee
http://www.w3.org/TR/1998/REC-xml-19980210
XMLNames
http://www.w3.org/TR/REC-xml-names
XSLTSee
http://www.w3.org/TR/xslt
这里面是xpath的一些详细介绍和用法:
http://msdn.microsoft.com/en-us/library/ms256115(VS.85).aspx
分享到:
相关推荐
XSLT提供了控制流、变量、函数库等编程特性,使得XML数据的呈现和处理更具灵活性。 5. **XSLT与XPath的应用** - 数据检索:XPath用于在XML文档中快速定位所需数据,提高了数据提取的效率。 - 文档呈现:XSLT可以...
2. **路径表达式**:路径表达式是Xpath的核心,用于导航XML文档的结构。例如,`/html/body/p`表示从根节点开始,选择`html`元素下的`body`元素,再选取其内的`p`元素。 3. **轴(Axis)**:轴定义了节点之间的关系...
它还包含一个标准函数库,可以进行更复杂的查询和数据处理。 在JavaScript中,XPath主要应用于AJAX开发,即在客户端与服务器交互时解析返回的XML数据。例如,服务器端返回一个简单的XML响应,如 `<resume><name>...
在《XSLT 2.0 and XPath 2.0 Programmer's Reference (Programmer to Programmer)》这本书中,读者可以深入学习XSLT 2.0和XPath 2.0的新特性,比如支持函数库的扩展、流式处理以及更强大的类型系统。XSLT 2.0引入了...
By.Xpath 也可以使用 contains 函数来实现模糊匹配。例如,//input[contains(@class,'textfild') and contains(@name,'pass')] 用于定位 class 属性包含 textfild 且 name 属性包含 pass 的 input 元素。 使用 By....
XPath不仅包括路径表达式的语法,还定义了一套标准函数库,用于执行各种操作,如字符串处理、数字比较等。这使得XPath不仅能够进行基本的选择,还能进行复杂的逻辑运算。 #### XPath与XSLT的关系 由于XPath是XSLT的...
6. **编程接口调用**:易语言通过封装COM接口,提供了易于理解的API函数,开发者可以通过这些函数与COM对象进行交互,实现对XML的操作。 7. **代码示例和教程**:压缩包中可能包含一些使用示例,帮助开发者了解如何...
XPath 2.0是XPath语言的第二个主要版本,相较于1.0版本,它引入了许多新特性,如支持更多的数据类型、函数库的扩展以及更强大的表达式能力。在"Xpath个人免费版.rar"这个压缩包中,我们可能找到了与XPath 2.0相关的...
XSLT 2.0是XSLT的第二个主要版本,引入了许多新特性,如模式选择、函数库的扩展、支持变量和参数、流式处理,以及对XML Schema的集成。它提供了更强大的功能,使得复杂的XML数据转换变得更加容易和高效。例如,你...
1. **读取XML文件**:首先,我们需要使用编程语言中的XML解析库(如Python的`lxml`库)读取XML文件,将其内容转化为可操作的数据结构。 2. **XPath查询**:接下来,使用XPath表达式定位到我们感兴趣的元素。这可以...
XPath还定义了一个核心函数库,包含多种操作节点集合、字符串、布尔值和数字的函数。这些函数可以进一步处理和分析选取的节点,如合并所有子元素的文本内容,或判断一个节点集合是否为空。 在XPath中,XML命名空间...
此外,XPath 还提供函数库,比如 `text()` 用于获取节点的文本内容,`count()` 计算节点数量,以及 `contains()` 检查字符串是否包含特定子串。 XPath 在实际应用中广泛用于 XSLT(XSL 转换)中,用来从源 XML 文档...
这个压缩包可能是一个教程或者参考资料集合,帮助开发者学习如何在Java中有效地利用XPath解析和操作XML文档。 首先,我们来了解一下XPath的基本概念。XPath是W3C制定的一种标准,用于在XML文档中定位节点,如元素、...
在Python中,可以使用`lxml`库的`ElementTree`模块来实现XPath操作。 **XPath基本概念** 1. **节点类型**:XPath识别五种主要的节点类型:元素(element)、属性(attribute)、文本(text)、命名空间(namespace...
XPath还包含一个内置函数库,支持处理字符串、数值、日期时间比较、节点处理等多种功能。这使得XPath不仅可以定位元素,还能进行复杂的数据处理和验证。 在Selenium自动化测试中,XPath的强大在于其灵活性和准确性...
1. `System.Xml`:这是.NET Framework提供的核心XML处理库,包括`XmlNode`, `XmlElement`, `XmlDocument`等类。例如,`XmlDocument`允许我们加载、解析、修改和保存XML文档。 2. `System.Xml.Linq`:这是一个更现代...
在提供的文件`get_xpath_tinyxml`中,很可能是使用TinyXML库来实现XPath抽取功能的示例。TinyXML是一个轻量级的库,易于理解和使用,它提供了DOM(Document Object Model)模型来表示XML文档,允许开发者遍历整个...
在XML对象操作中,主要涉及以下几个核心概念: 1. **XML文档结构**:XML文档由元素(Element)、属性(Attribute)、文本内容(Text Content)等组成,具有严格的树形结构。元素是XML文档的基本构建块,可以包含...