0

次のHTMLの各行でtext()を選択したいと思います。ただし、必要なテキストはtd要素またはp要素のいずれかにあるため、各行が確実に選択されるように2つのステートメントを記述する必要があります。

2つのステートメントを1つに組み合わせるにはどうすればよいですか?

XPATH:

//table/tr/td[not(p)]/text() | //table/tr/td/p/text()

望ましい結果が得られた場合:

['1', '2', '3', '4']

元のhtml:

<table>
  <tr>
    <td>1</td>
  </tr>
  <tr>
    <td>
      <p>2
    </td>
  </tr>
  <tr>
    <td>3</td>
  </tr>
  <tr>
    <td>
      <p>4
    </td>
  </tr>
</table>
4

1 に答える 1

0

おそらくあなたはこのようなものが欲しいでしょう:

//table/tbody/tr/td//text()[normalize-space()]

空白以外のすべてのテキストノードが、1つ以上のレベルの深さ//table/tr/tdで検出されます。

于 2012-06-02T19:21:33.543 に答える