[解決済み] 属性値で要素を選択するXPath
2022-04-21 14:43:33
質問
次のようなXMLがあります。
<?xml version="1.0" encoding="UTF-8"?>
<Employees>
<Employee id="3">
<age>40</age>
<name>Tom</name>
<gender>Male</gender>
<role>Manager</role>
</Employee>
<Employee id="4">
<age>25</age>
<name>Meghna</name>
<gender>Female</gender>
<role>Manager</role>
</Employee>
</Employees>
id="4"を持つEmployee要素を選択したいのですが。
私は以下のXPath式を使用していますが、何も返しません。
//Employee/[@id='4']/text()
で確認しました。 http://chris.photobooks.com/xml/default.htm と表示され、Invalid xpathと表示されるため、どこに問題があるのかわかりません。
どうすればいいですか?
を削除する必要があります。
/
の前に
[
. 述語(
[
]
のように、直前にスラッシュを付けないようにします。 また、Employee 要素そのものを選択する場合は
/text()
を指定しないと、Employee 要素の直下にある空白のテキスト値が選択されるだけです。
//Employee[@id='4']
編集する
コメントでJensが指摘しているように
//
は、マッチするノードを探すためにドキュメント全体を検索するため、非常に遅くなることがあります。もし、扱う文書の構造が一貫しているのであれば、フルパスなどを使用した方がよいでしょう。
/Employees/Employee[@id='4']
関連
-
[解決済み】XSLTでif-else文を実装する方法とは?
-
[解決済み] xpathSApplyを使用してRでXML属性をスクレイピングする
-
[解決済み] NULLのXML要素を表現する正しい方法は?
-
[解決済み] 自己閉鎖的なxsl:templateタグ?
-
[解決済み] XMLを解析して、特定のノード属性のインスタンスをカウントするには?
-
[解決済み] XPathによる属性の取得
-
[解決済み] XPathでCSSクラスを指定して要素を検索するにはどうすればよいですか?
-
[解決済み】XPathを使用して、特定の属性を持つ最初の要素を選択する方法
-
[解決済み】XPathで属性ノードの値を抽出する
-
[解決済み】XPathで子の子値を元に要素を選択する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】XMLファイルに改行を追加する方法は?
-
[解決済み] XMLを用いたIF...THEN...ELSE
-
[解決済み] XML: 後続のセクションでコンテンツが許可されていない
-
[解決済み] XMLにおける "loop "の標準?
-
[解決済み] cvc-complex-type.2.4.a: 要素 'ProcessDesc' で始まる無効なコンテンツが見つかりました。ProcessNameのいずれかが期待されます。
-
[解決済み] xslt での配列の作成
-
[解決済み] デコード � リアルキャラクターへ
-
xmlファイルを記述する際には、ルート要素に先行する文書内のマークアップが整形されている必要があります。
-
[解決済み] 設定ファイルが整形式のXMLでない #2
-
[解決済み】XMLの "xmlns "の意味は?