XML SelectNodes と XPath

黄舟
黄舟オリジナル
2017-02-15 15:32:421744ブラウズ


XPath は XML の内容であり、SelectNodes は C# の XmlDocument または XmlNode のメソッドです。 SelectNodes は XPath を使用してノードを選択します。

重要な構文:

SelectNodes("item")

現在のノードの子ノード (孫と曾孫を除く息子のみ) から item という名前のノードを選択します。

SelectNodes("/item")

ルートノードの子ノードから item という名前のノードを選択します。

SelectNodes("//item")

任意の位置のノードから item という名前のノードを選択します。この任意の位置を強調表示するには、現在のノードの影響を受けません。つまり、現在のノードが 100 番目のレイヤーにある場合 (少し誇張されていますが)、最初のレイヤーの item という名前のノードを選択することもできます。

SelectNodes(".")

現在のノードを選択します。

SelectNodes("..")

現在のノードの親ノードを選択します。

SelectNodes("//item[@name]")

SelectNodes("//item") に基づいて、name 属性を要求するという制限が追加されます。

SelectNodes("//item[@name='111']")

SelectNodes("//item[@name]") に基づいて、name 属性値が以下である必要がある制限が追加されます。 111.構文には引用符が含まれていることに注意してください。引用符がない場合は、数値型の場合、大なり記号、小なり記号などを使用できます。たとえば、SelectNodes("/) です。 /item[@v>333]")。

SelectNodes("//item[1]")

最初の項目を選択します。これは 2 番目の項目ではなく、最初の項目であることに注意してください。また、ここでは兄弟間の最初のアイテムを指します。つまり、親に 3 つのアイテムがある場合は、最初のアイテムを選択します。親の 2 番目のアイテムにアイテムと同じ名前の 2 つの息子がある場合、最初の息子は次のようになります。 selected; 親の 3 番目のアイテムにも item と同じ名前の 2 つの息子がある場合、最初の息子も選択されます...

SelectNodes("//item[last( )-1]")

最後から 2 番目のノードは、兄弟間の最後から 2 番目のノードも指します。

SelectNodes("//item[position()<=2]")

最初と 2 番目の位置を持つノード (最初のノードのposition() は 1) の間の兄弟の位置も参照します。 selectnodes( "//@name")selectnodes( "/root/it@name") Value プロパティを使用して、プロパティ コレクションのプロパティ値を取得します。 OSEEM ルート ノード ルート ノード ルート ノードの下の息子 息子ノード。 OSelectNodes ("/Root // item")

息子、孫、孫が選択されているかどうか、Item の名前が選択されている限り。

は、selectionnodes( "/channel/*/item")などのノード名を示すことができます。任意のタイプのノード;

テキスト タイプのノードを表すには text() を使用します。これは実際にはテキスト ノードを取得することを意味します (テキスト ノードは要素ノードの下にあり、テキストはテキスト ノードの下にあります)。

オペレーター:

| SelectNodes("//item|//channel")、アイテムまたはチャネル ノードを選択します。

上記は Xml SelectNodes と XPath の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) に注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。