ポップクイズ!私は複数の行と一意の識別子のないテーブルを持っています。一意の行を識別する唯一の方法は、2つ以上の値を一致させることです(1 following-sibling
と1 preceding-sibling
は機能しません)。以下は、私がTest 2
を必要と私は私と一緒に以下のデータを持っているサンプルxpathの複数の兄弟または先行兄弟
<tr>
<td>Map</td>
<td>First</td>
<td>Second</td>
<td>Third</td>
<td>A01</td>
<td><a href='test0'>Test 0</a></td>
</tr>
<tr>
<td>Map</td>
<td>First</td>
<td>Tenth</td>
<td>Third</td>
<td>A03</td>
<td><a href='test1'>Test 1</a></td>
</tr>
<tr>
<td>Map</td>
<td>Second</td>
<td>Fifth</td>
<td>Forth</td>
<td>A02</td>
<td><a href='test2'>Test 2</a></td>
</tr>
です。 A02
Forth
td[5]
あるFifth
td[4]
あるSecond
td[3]
あるMap
td[2]
ある
これは私が試したのXPathです:
//td/a[contains(., 'Test 2')][preceding-sibling::td[1][contains(., 'Map')] and td[2][contains(., 'Second')] and td[3][contains(., 'Fifth')] and td[4][contains(., 'Forth')] and td[5][contains(., 'A02')]]
を、私はこのための解決策を見つけることに怒っています!助けが大いにありがとう!
あなたは何を試してみましたか – Andersson
彼は怒っていると言いました。 – kjhughes
現在の問題を解決する奇妙なアプローチ – Andersson