[解決済み] ある要素のn番目のインスタンスを取得するためのXPathクエリ
2022-04-25 10:33:07
質問
あるHTMLファイル(そのコンテンツは私が管理していない)に、いくつかの
input
要素に、すべて同じ固定の
id
属性は
"search_query"
. ファイルの内容は変わる可能性がありますが、私は常に、2番目の
input
要素に id 属性
"search_query"
.
これを行うには、XPath式が必要です。私は試しに
//input[@id="search_query"][2]
が、うまくいきません。以下は、このクエリが失敗したXML文字列の例です。
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
<div>
<form>
<input id="search_query" />
</form>
</div>
上記は単なる例であり、他の HTML コードは全く異なる可能性があることに留意してください。
input
要素は、一貫性のない文書構造でどこにでも現れることができます(ただし、少なくとも2つの
input
要素で、id属性が
"search_query"
).
正しいXPath表現は何ですか?
どのように解決するのですか?
これはFAQです :
//somexpression[$N]
で選択されたすべてのノードを検索することを意味します。
//somexpression
は、その
$N
の子である。
あなたが欲しいのは :
(//input[@id="search_query"])[2]
リメンバー
: その
[]
演算子よりも優先順位が高いです。
//
の省略形です。
関連
-
[解決済み] 文字列が部分文字列で終わっているかどうかをXPathでテストする?
-
[解決済み] XMLの<![CDATA[]]>は何を意味するのですか?
-
[解決済み] XPathによる属性の取得
-
[解決済み] XPathでCSSクラスを指定して要素を検索するにはどうすればよいですか?
-
[解決済み】XPathで子の子値を元に要素を選択する方法
-
[解決済み】シェルからXPathワンライナーを実行する方法は?
-
[解決済み] 属性値で要素を選択するXPath
-
[解決済み] ある要素のn番目のインスタンスを取得するためのXPathクエリ
-
[解決済み] XMLコマンドライン処理のためのGrepとSedの等価版
-
[解決済み] Vim で一致する XML タグにジャンプする
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] cURL コマンドラインを使用して XML ファイルを POST
-
[解決済み] XMLで属性値を取得する
-
[解決済み] 正規表現 \p{L} and \p{N}
-
[解決済み] XPath contains()の使い方を教えてください。
-
[解決済み] XML SchemaとDTDの違いは何ですか?
-
[解決済み] IIS7:HTTP->HTTPS クリーンアップ
-
[解決済み] Vim で一致する XML タグにジャンプする
-
[解決済み] xmlのCDATAエンドトークンをエスケープする方法はありますか?
-
[解決済み] SVG テキストの自動改行
-
[解決済み] XSD - 要素を何度でも好きな順番で並べられるようにするには?