文章編號: 303516 - 上次校閱: 2004年8月30日 - 版次: 1.2

如何使用 starts-with() XPath 函式

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊

結論

載入並剖析 XML 文件使用 Microsoft XML (MSXML) 文件物件模型 (DOM) 來使用其值以特定字元或字元序列開頭的屬性識別項目和 (或) 項目時,它會是常見的程式設計需求。本文包含程式碼範例示範如何使用 啟動-與 XML 路徑語言 (XPath) 字串函式,以實作這項需求。

其他相關資訊

雖說是逐步範例

  1. 在 [記事本] 中, 建立新的 XML 文件,名為 Books.xml,和貼上下列 XML:
    <?xml version="1.0"?>
    <!-- This file represents a fragment of a bookstore inventory database -->
    <bookstore specialty="novel">
      <book style="autobiography">
        <author>
          <first-name>Joe</first-name>
          <last-name>Bob</last-name>
          <award>Trenton Literary Review Honorable Mention</award>
        </author>
        <price>12</price>
      </book>
      <book style="textbook">
        <author>
          <first-name>Mary</first-name>
          <last-name>Bob</last-name>
          <publication>Selected Short Stories of
            <first-name>Mary</first-name>
            <last-name>Bob</last-name>
          </publication>
        </author>
        <price>55</price>
      </book>
    </bookstore>
    					
  2. 將 Books.xml 儲存在根資料夾的磁碟機 C。
  3. 開啟新的標準 EXE 專案 Microsoft Visual Basic。預設會建立 Form1。
  4. 從 [專案] 功能表按一下 [引用項目,] 然後選取 [Microsoft XML 3.0] 核取方塊。
  5. 將命令按鈕並將其置放 Form1。
  6. 複製並貼上下列程式碼在指令按鈕的 Click 事件程序:
    Dim doc As MSXML2.DOMDocument
    Dim nlist As MSXML2.IXMLDOMNodeList
    Dim node As MSXML2.IXMLDOMNode
    
    Set doc = New MSXML2.DOMDocument
    doc.setProperty "SelectionLanguage", "XPath"
    doc.Load "c:\books.xml"
    Set nlist = doc.selectNodes("//book/author/first-name[starts-with(.,'M')]")
    MsgBox "Matching Nodes : " & nlist.length
    
    For Each node In nlist
      Debug.Print node.nodeName & " : " & node.Text
    Next
    					
  7. 上述程式碼載入 XML Books.xml 從 MSXML DOMDocument 物件的執行個體。接著會執行 XPath 查詢所使用之 啟動-與 XPath 函式,以字母 M 是用來辨識第一個名稱開頭的所有作者。最後,For 迴圈會逐一查看選取的節點,並會顯示相符作者元素的第一個名稱。
  8. 第一個參數的 啟動-與 XPath 函式用來指定來源節點或字串比較是要執行的。第二個參數則是指定字元或用於比較中的字元序列,模式字串。務必記得模式字串,提供做為第二個參數的 啟動-與 是區分大小寫的函式。

這篇文章中的資訊適用於:
  • Microsoft XML Parser 3.0
  • Microsoft XML Parser 3.0 Service Pack 1
關鍵字:?
kbmt kbhowto KB303516 KbMtzh
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:303516? (http://support.microsoft.com/kb/303516/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。