[英]HtmlAgilityPack Wildcard Search in Powershell
我怎樣才能縮短以下內容?
$contactsBlock
是一個 HTMLAgilityPack 節點,XPath: /html[1]/body[1]/div[3]/div[2]/div[2]/div[1]/div[1]/div[2]/div[1]/div[3]/div[5]/div[1]/div[2]
$contactsBlock.SelectSingleNode(".//table").SelectSingleNode(".//table")
結果在所需的 XPath: /html[1]/body[1]/div[3]/div[2]/div[2]/div[1]/div[1]/div[2]/div[1]/div[3]/div[5]/div[1]/div[2]/table[1]/tr[2]/td[1]/div[1]/div[2]/table[1]
第二個表嵌套在第一個表中,我想將上面的SelectSingleNode
縮短兩次為這樣的
$contactsBlock.SelectSingleNode(".//table/*/table")
並跳過中間部分。
有沒有辦法像這樣使用通配符?
XPath 表達式.//table//table
應該匹配當前節點下其他表中嵌套的所有表。 雙正斜杠匹配任意長度的路徑。
.//table/*/table
不太可能給你一個匹配,因為星號通配符匹配一個節點(即一個層次結構),所以嵌套表必須是第一個表的孫節點:
<table>
<tr>
<table>...</table>
<!-- nested table would have to go here -->
</tr>
</table>
這將是非常不尋常的。 也不符合您問題中 XPath 表達式建議的結構。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.