XML 取得元素的字符数据(取xml指定标签数据)墙裂推荐

随心笔谈9个月前更新 admin
203 00
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

文章摘要

这篇文章介绍了如何在XML文档中使用JavaScript脚本处理字符数据。文章指出,`text`属性是一种快捷方法,可以直接获取元素中的文字内容,而无需访问子节点。例如,`title.innerText`可以提取`TITLE`元素中的文本内容。然而,当元素包含多个子元素时,`text`属性会包含所有后续文字内容。为了仅获取特定元素的字符数据,可以使用`Element`节点的属性或方法来访问子节点中的字符数据。 文章还强调了`Text`节点的作用及其提供的属性和方法。`Text`节点存储了元素中的字符数据,并提供了以下功能:- `Length`属性用于获取字符总数。- `SubstringData(charOffset, numChars)`方法用于提取特定范围内的子字符串。 此外,文章提到了`Element`节点的第一个子节点`firstChild`可以用于直接获取字符数据。`Text`节点的方法和属性(如`Length`、`SubstringData`)为处理字符数据提供了便捷的工具。这些方法和属性的使用场景和示例也逐一列出,帮助读者更好地理解和应用。



列表9-3 中的script 程序使用每个子元素(TITLE、AUTHOR、BINDING、PAGES 与PRICE)的text 属性,来作为取得元素字符数据的快捷方法。例如,下列的程序代码被用来撷取TITLE元素中的字符数据:

title.innerText=Document.documentElement.childNodes(0).text;

    text 属性不仅提供了目前节点所代表的元素其文字内容,也提供任何后续元素的文字内容。当元素没有任何子元素时,该属性可以正确地撷取元素中的文字内容(如元素TITLE)。然而,如果元素包含一个以上的子元素与字符数据,则text 属性将传回所有的文字,如同下面范例所示(在这个范例中是「Moby-Dick Or,the Whale」)。

Moby-Dick</p>

Or,the Whale

    为了只取得TITLE 元素的字符数据,你必须存取TITLE 元素的子文字节点。

    表格9-1 中,Element 节点的nodeValue 属性的值是null。如果元素包含了字符数据,则文字将被储存于子Text 节点,而你可以从此Text 节点的nodeValue 属性来存取字符数据。例如,如同前面范例所示,如果TITLE 元素的Element 节点包含文字「Moby-Dick」,则下面的程序代码将提供TITLE 的字符数据「Moby-Dick」,而不含属于SUBTITLE 的字符数据:

Element.firstChild.nodeValue

    (因为TITLE 元素的字符数据位置在其子元素的前面,所以由第一个子节点来表示字符数据,因此你可以使用firstChild 属性来撷取字符数据。)如果元素的字符数据与子元素、批注,或处理指令散置在一起,则每个个别的字符数据区块将表示成为元素所属的子Text 节点。例如,在下面范例中,ITEM 元素拥有三个子节点,其顺序为:Text 节点表示第一个字符数据区块,Element 节点表示子元素SUB-ITEM,而另一个Text 节点则代表第二个字符数据区块:

character data block 1

sub-item text

character data block 2

    表格9-5 分别列出Text 节点所提供的有用属性和方式:

Text 节点的属性
描述
范例

Length
此节点的文字包含的字符个数
CharacterCount=Text.length;

Text 节点的方法
描述
范例

SubstringData(char-offset,num-chars)
传回一个包含特定字符数目的字符串,该字符串从节点的文字内容而来。

char-offset 为子字符串的起始位置,和num-chars 为子字符串的长度
SubString=Text.substringData(2,3); (从Text 元素的内容传回第二、三、四等三个字符)    表格9-5 文字节点分别提供一个有用的属性和方法,可使用的属性也包括了表格9-2 中所列的共同节点属性。

© 版权声明

相关文章