4

複数の行を持つテーブルがあり、xpathを使用して、各列に特定の値を含む1つの行を見つけようとしています。たとえば、列1に「foo」、列2に「bar」、列3に「baz」を期待します。

これらの特定の列にこれらの3つの特定の値を含む行を取得するために、どのxpathを使用できますか?

たとえば、次の表が与えられた場合、期待される列に3つの期待値がある1つの行のみを取得できるようにします。

<table>
  <tr><td>foo</td><td>bar</td><td>xxx</td></tr>
  <tr><td>xxx</td><td>bar</td><td>baz</td></tr>
  <tr><td>foo</td><td>bar</td><td>baz</td></tr>
  <tr><td>bar</td><td>baz</td><td>foo</td></tr>
  <tr><td>foo</td><td>xxx</td><td>baz</td></tr>
</table>
4

3 に答える 3

16

tableこれはトリックを行います(要素が現在のコンテキストノードであると仮定します):

    tr[(td[1] = 'foo') and (td[2] = 'bar') and (td[3] = 'baz')]

td[1]最初のtd子、td[2]2番目の子などを選択します。次に、条件を。と組み合わせますand

于 2012-05-23T19:58:09.397 に答える
1

これもトリックを行います...xpathを使用しないことで、必要なものを取得するためのより高速な方法があると確信しています。

// tr [td [1] [text()='foo']およびtd[2] [text()='bar']およびtd[3] [text()='baz']]

于 2012-05-23T20:04:10.703 に答える
-1

directorypath\[name="value"]\...検索時に使用できます

于 2012-05-23T19:48:14.297 に答える