1

主に私自身の無知のために、内部を完全に理解できなかったため、この質問を繰り返しています。

この HTML スニペットを考えると

<td valign=top class="tim_new">
  <a href="/stocks/company_info/pricechart.php?sc_did=MI42" class="tim_new">3M India</a>
</td>
<td class="tim_new" valign=top>
  <a href='/stocks/marketstats/indcomp.php?optex=NSE&indcode=Diversified' class=tim>Diversified</a>
</td>

//a[@class='tim_new']この XPATHは、行 1 と行 2 をどのように区別しますか。

4

1 に答える 1

2

XPath を分解します。

//- これは、明示的な「パス」を探すのではなく、一致する XML の任意の場所を検索します。

aa- これはすべての要素に一致します。したがって、他の要素 (tdこの場合) は無視されます。

[@class='tim_new']class- これは、の値で呼び出される属性に一致しますtim_new

つまり、XPath は入力 XML (この場合は HTML) のあらゆる場所で、値がaの属性を持つ要素を探します。classtim_new

td代わりに要素を一致させたい場合は、 を使用します//td[@class='tim_new']

于 2010-06-08T09:09:45.863 に答える