如何使用xpath按列标题名称选择表列

Edu*_*rev 12 select xpath

我有一个结果表,它看起来如下:

<table>
  <thead>
    <tr>
      <th>Id</th>
      <th>Type</th>
      <th>Amount</th>
      <th>Price</th>
      <th>Name</th>
      <th>Expiration</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>123</td>
      <td>Paper</td>
      <td>10 pcs.</td>
      <td>$10</td>
      <td>Premium Copier paper</td>
      <td>None</td>
    </tr>
    <tr>
      <td>321</td>
      <td>Paper</td>
      <td>20 pcs.</td>
      <td>$20</td>
      <td>Extra Copier paper</td>
      <td>None</td>
    </tr>
  </tbody>
Run Code Online (Sandbox Code Playgroud)

我想用xpath选择整个列的名称,例如我希望返回的结果是{<td>$10</td>, <td>$20</td>}由列名"Price"选择的数组.我是xpath的新手,并不确定如何做到这一点,但我很确定这是可能的.

Edu*_*rev 25

好吧,我已经找到了足够的答案并且看起来非常优雅.这是必需的XPath字符串:

//table/tbody/tr/td[count(//table/thead/tr/th[.="$columnName"]/preceding-sibling::th)+1]
Run Code Online (Sandbox Code Playgroud)

放置列的名称而不是$ columnName.这对我很有用.没有XSL或任何东西,只有纯xpath字符串.如何应用它 - 这是另一个问题.