Xpath常用文法


Xpath常用文法Xpathは、XMLドキュメントで情報を検索する言語です.Xpathは、XMLドキュメント内で要素および属性を巡回するために使用される.
Xpathツール推奨
chromeプラグインXPath Helperショートカット:
  • CTRL+SHIFT+X:オープン
  • 長押しCTRL+SHIFT+ :抽出段落
  • Xpath構文
    共通パス式
    式#シキ#
    説明
    /
    ルートノードから選択
    nodename
    ノードのすべてのサブノードを選択
    //
    現在のノードを選択一致するすべてのドキュメントのノードを選択
    .
    現在のノードを選択

    現在のノードの親ノードを選択
    @
    属性の選択
    述語条件
    """
    
    
      two
      1.99
    
    
    
      one
      2.95
    
    
    
    """
    
  • 特定の情報または指定された値を含むノードを検索します.
  • 述語は、四角カッコに埋め込まれており、いずれも四角カッコ[]に書かれており、ノードをさらにフィルタリングすることを示しています.

  • パス式
    結果
    /store/apple[1]
    最初のapple要素を選択
    /store/apple[last()]
    最後のapple要素を選択
    /store/apple[position()❤️]
    最初の2つのapple要素を選択
    //title[@lang]
    langプロパティのあるtitle要素を選択
    //title[@lang=‘ch’]
    lang属性chのtitle要素を選択
    //apple[price>1.00]
    選択したapple要素のprice値が1より大きい
    //apple[price>1.0]/tile
    選択したapple要素のprice値が1より大きいtitle要素
    不明なノード
    ワイルドカード
    説明
    *
    任意のノードに一致
    @*
    任意のアトリビュートノードを一致させる
  • /store/*:storeのすべてのサブエレメント
  • を選択
  • //*:ドキュメントのすべての要素
  • を選択
  • //title[@*]:属性付きtitle要素
  • を選択する.
    複数のパスを選択
    パス式で|演算子を使用してパスを選択
    パス式
    結果
    //store/title
    //store/price
    //title
    //price
    //store/title
    //price
    高度な使い方
  • contains用法
  • //title[contains(text,'cn')]クエリーtextノード値のcn文字列を持つtitleノード
  • and用法
  • //title[contains(text,'cn') and contains(@ID, '1')]すべてのtextノード値のうちcn文字列を有する、属性ID値のうち1を有するtitleノード
  • を問い合わせる.
  • not用法
  • title[not(@data)]は、dataの属性を含むtitleノード
  • を含まない.
  • count用法
  • count(//title)統計titleノード数
  • concat用法
  • concat(//title[@data="one"]/text(),//title[@data="three"]/text())文字列リンク
  • string用法
  • string(//title)は、ノードの下に一致する最初の値
  • を解析する.