如何通过XPath获得一个Xml节点下的文字部分

实例

如果存在以下的Xml文本,

<a>Hello, my name is <name>Bob</name></a> 

可以通过XPath的语法获得<a>下面的文字部分,也就是""Hello, my name is"。XPath语法如下:

/a/text()[1]

解释

这实际上是一个缩写的XPath语法。完整的语法如下:

/a/child::text()[1]

text()就是child::text()的缩写。

text()是一个Node Test语法,当一个节点类型是文字(Text)的时候,该语法为真。类似的Node Test语法还有comment()、node()等,分别在节点类型是注释和一般节点是为真。

child::text()则返回一个集合,包含在所有子节点中类型为文字(Text)的节点。[1]则是表明取集合中的第1项。

其他资料

作者: 闹博 [nowbor]

波波坡原创文章 链接:http://www.bobopo.com/article/code/xpath_text.htm

标签:

关键词: XPath, Xml节点, 文字部分, Node Test, XPath语法

创建日期: 2008-01-10

文库 微博 博客 作品 首页