好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁(yè) > 知識(shí)庫(kù) > XSLT輕松入門第四章:XPath的語(yǔ)法

XSLT輕松入門第四章:XPath的語(yǔ)法

熱門標(biāo)簽:南寧網(wǎng)絡(luò)外呼系統(tǒng)運(yùn)營(yíng)商 400電話辦理包年 東營(yíng)電銷 微信地圖標(biāo)注合并了 r語(yǔ)言數(shù)據(jù)可視化地圖標(biāo)注 隨州外呼調(diào)研系統(tǒng) 本地電話機(jī)器人 如何修改多個(gè)百度地圖標(biāo)注 高德地圖地圖標(biāo)注服務(wù)中心

4.XPath的語(yǔ)法

我們?cè)谇懊嬉呀?jīng)提到過,XPath是用來幫助XSLT在XML源文檔中查找定位信息的語(yǔ)言。在實(shí)際使用過程中,XPath和XSLT總是混在一起使用,在上面一章的語(yǔ)法例子中我們已經(jīng)有使用到XPath的語(yǔ)法,只是沒有明確點(diǎn)出。但W3C將它們分成兩個(gè)標(biāo)準(zhǔn),所以我們也將它們拆成兩章來講解。

4.XPath的語(yǔ)法

4.1 當(dāng)前位置
4.2 尋址操作
4.3 運(yùn)算符
4.4 功能函數(shù)

4.1 當(dāng)前位置

當(dāng)我們使用XSLT處理XML源文檔是,我們用Context來表示當(dāng)前正在被模板處理的節(jié)點(diǎn)位置。比如xsl:template match="/"語(yǔ)句中表示Context在文檔的根(root)節(jié)點(diǎn)。我不知道如何準(zhǔn)確的翻譯Context這個(gè)詞,它類似于C語(yǔ)言里的指針,表示程序當(dāng)前運(yùn)行的位置。理解Context對(duì)于正確處理XSL模板非常重要,當(dāng)您的XSL模板輸出的文檔和您想要的不一樣,最先應(yīng)該分析的就是Context在哪里。
Location Paths是用于設(shè)定你想要尋找的Context節(jié)點(diǎn)位置。就類似DOS的目錄命令。我們看個(gè)例子

xsl:for-each select="child::PEOPLE/descendant::PERSON">

其中child::PEOPLE/descendant::PERSON就是XPath語(yǔ)法,這個(gè)表達(dá)式就是一個(gè)Location Paths,代碼說明要顯示所有PEOPLE元素的子元素和所有PERSON元素的子元素。通常我們會(huì)采用更簡(jiǎn)單的寫法:

xsl:for-each select="PEOPLE//PERSON">

我們來解釋path的兩種表示方法:"/"和"http://"。
"/"是表示當(dāng)前文檔的節(jié)點(diǎn),類似DOS目錄分割符。例如:/PEOPLE表示選擇根節(jié)點(diǎn)下的PEOPLE元素;PEOPLE/PERSON表示選擇PEOPLE元素下所有的PESON子元素。
"http://"則表示當(dāng)前文檔所有的節(jié)點(diǎn)。類似查看整個(gè)目錄。例如://PEOPLE表示選擇文檔中所有的PEOPLE元素,無論它在什么層次;PEOPLE//PERSON表示在PEOPLE元素下所有的PERSON元素,無論它的層次多深。

4.2 尋址操作

Axis和Predicate是XPath語(yǔ)法中對(duì)Location Paths進(jìn)行定位操作的語(yǔ)法,具體的用法列表如下

Axis語(yǔ)法表
--------------------------------------------------------
表達(dá)式 簡(jiǎn)寫 說明
--------------------------------------------------------
self . 選擇當(dāng)前的節(jié)點(diǎn).。
例子 :
TD>xsl:value-of select="."/>/TD>
代碼表示在當(dāng)前位置插入當(dāng)前的節(jié)點(diǎn)包含的文本(text)值,
--------------------------------------------------------
parent .. 選擇當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)。
--------------------------------------------------------
attribute @ 選擇一個(gè)元素的所有屬性。
例子:
TD>xsl:value-of select="@PERSONID"/>/TD>
選擇PERSON元素的所有屬性.
--------------------------------------------------------
child 選擇當(dāng)前節(jié)點(diǎn)的所有子元素。
--------------------------------------------------------
ancestor 選擇當(dāng)前節(jié)點(diǎn)的所有父元素(包括父元素的父元素,類推)
--------------------------------------------------------

Axis幫助我們選擇當(dāng)前節(jié)點(diǎn)周圍所有的節(jié)點(diǎn),而Predicate則用來定位當(dāng)前節(jié)點(diǎn)內(nèi)部的元素。表示方法為方括號(hào)[]中加表達(dá)式:[ Expression ]。具體舉例如下:

PERSON[position()=2]
這句代碼表示尋找第二個(gè)"PERSON" 元素

PERSON[starts-with(name, "B")]
這句代碼表示尋找所有名稱以"B"開頭的PERSON元素。

4.3 運(yùn)算符

這一節(jié)介紹XPath的運(yùn)算符(Expressions),列表如下:
--------------------------------------------------------
運(yùn)算符 說明
--------------------------------------------------------
and, or 就是普通意義的and, or
--------------------------------------------------------
= 等于
--------------------------------------------------------
!= 不等于
--------------------------------------------------------
>, >= 大于,大于等于
--------------------------------------------------------
, = 小于,小于等于。注意:在XSL文件中,符號(hào)要用 表示
--------------------------------------------------------
+, -, *, div 加減乘除
--------------------------------------------------------
mod 取模
--------------------------------------------------------
| 兩個(gè)節(jié)點(diǎn)一起計(jì)算
--------------------------------------------------------

4.4 功能函數(shù)(Functions)

在XPath里有很多功能函數(shù)可以幫助我們精確尋找需要的節(jié)點(diǎn)。

count()功能
作用:統(tǒng)計(jì)計(jì)數(shù),返回符合條件的節(jié)點(diǎn)的個(gè)數(shù)。
舉例:p>xsl:value-of select="count(PERSON[name=tom])"/>/p>
說明:代碼的用途是顯示PERSON元素中姓名屬性值為tom有幾個(gè)。

number()功能
作用:將屬性的值中的文本轉(zhuǎn)換為數(shù)值。
舉例:p>The number is: xsl:value-of select="number(book/price)"/>/p>
說明:代碼的用途是顯示書的價(jià)格。

substring() 功能
語(yǔ)法:substring(value, start, length)
作用:截取字符串。
舉例:p>xsl:value-of select="substring(name, 1, 3)"/>/p>
說明:代碼的用途是截取name元素的值,從第一個(gè)字母開始顯示到第三個(gè)。

sum()功能
作用:求和。
舉例:p>Total Price = xsl:value-of select="sum(//price)"/>/p>
說明:代碼的用途是計(jì)算所有價(jià)格的和。

上面這些功能只是XPath語(yǔ)法中的一部分,還有大量的功能函數(shù)沒有介紹,而且目前XPath的語(yǔ)法仍然在不斷發(fā)展中。通過這些函數(shù)我們可以實(shí)現(xiàn)更加復(fù)雜的查詢和操作。

看到這里,我們的入門教程就快結(jié)束了。通過走馬觀花式的快速學(xué)習(xí),希望大家對(duì)XSLT應(yīng)該有了一點(diǎn)基本概念:XSLT是一種轉(zhuǎn)換XML文檔的語(yǔ)言,它包含兩個(gè)過程:轉(zhuǎn)換和格式化。XSLT的功能比CSS強(qiáng)大得多,它有類似數(shù)據(jù)查詢的語(yǔ)法。如果您對(duì)XSLT感興趣,那么以上的知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,需要查詢更多的資料。阿捷在最后一章附錄為大家提供了主要的XSLT資源。

標(biāo)簽:益陽(yáng) 拉薩 果洛 西雙版納 寧夏 黃石 宿遷 德州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《XSLT輕松入門第四章:XPath的語(yǔ)法》,本文關(guān)鍵詞  XSLT,輕松,入門,第四章,XPath,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《XSLT輕松入門第四章:XPath的語(yǔ)法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于XSLT輕松入門第四章:XPath的語(yǔ)法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 亚洲欧美日韩一区成人| 激情啪啪网| 粉嫩学生无套白浆在线播放| 国产色视频一区二区三区QQ号| 小骚母狗| 刘亦菲高朝床叫视频| 免费观看v片m3837cc| 男人把j放在女人的屁股视频| 久久九色综合九色99伊人| 日本一区不卡视频| 成人福利App导航入口| 日本?人妻の亂倫| 亚洲 国产 另类 无码 日韩| 菲菲逼未满十八岁禁止入内| 喘息猛烈呻吟暧昧娇喘视频| 柳岩下面好紧水好多| 欧美蜜桃臀XXOO色涩色| 罗志祥5G天天奭免费高清电视剧| 久久亚洲电影www电影网| 中文字日产乱幕六区| 全部免费的毛片在线看美国 | 三级高清理伦电影在线| 激情床戏网站| 男男做爰猛烈叫床gif动态图| 精品国产Av无码久久久KTV| 日韩美女乱婬高清色情照片小说| 九九热精品免费观看| xxxx18日本老师和学生| 欧美性xX??B| 娇妻被朋友粗大猛烈进出视频沈曼 | 国语对白刺激真实精品| 91精品免费看| 男女啪啪动态图| 欧美一区二区三区成人片在线 | 男总裁跪趴高h男秘书攻| 久久国产精品鲁丝片| 久久精品国产亚洲AV无码麻豆,| gogo西西人体大尺寸大胆高清图片 | 夜夜狠狠操| 被男人嗦过奶头一下就变大了| av无码中文字幕精品久久|