我正在使用Agility Pack重新格式化HTML文檔,並且我遇到了對XPath理解的限制。
在我正在使用的文檔中,以下是一個常見的構造:
128 2
這是這樣構建的:
128<img src="" style="display: none;" alt="^(" /><sup>2</sup><img src="" style="display: none;" alt=")" />
因此,當您選擇並將其複製到剪貼板時,它將變為:
128 ^(2)
現在,我想使用XPath刪除這些img
標籤。
這是我到目前為止:
//img[@alt='^(' ???/sup]
如何根據直接兄弟的存在選擇元素?
顯然它是這樣的:
//img[@alt='^(' and following-sibling::*[1][self::sup]]
那是(而且,我猜,在這裡):
//img
一個img
(任何地方)......
[@alt='^(' and ... ]
...其alt
屬性為'^('
和...
following-sibling::*[1]
......他的第一個兄弟姐妹......
[self::sup]
...可以稱自己為sup
。
在我的頭頂,使它成為一個複合條件。就像是:
//img[@alt='^(' ???/sup AND preceding-sibling::*[1] AND following-sibling::*[1]]