有什麼辦法可以縮短XPath表達式中使用的以下條件嗎?如何優化XPath表達式?
(../parent::td or ../parent::ol or ../parent::ul)
XPath的版本是1.0。
有什麼辦法可以縮短XPath表達式中使用的以下條件嗎?如何優化XPath表達式?
(../parent::td or ../parent::ol or ../parent::ul)
XPath的版本是1.0。
最短可能是
../..[self::td|self::ol|self::ul]
之間是否存在的性能差異 「|」和「或」將取決於處理器,但我懷疑在大多數情況下它不會引起注意。對於表演,重要的是要把條件放在正確的順序(最有可能返回的那個應該是第一個)。 (a)您的XPath引擎可能會自動執行此優化,並且(b)差異可能會非常小,您在測量時會遇到麻煩。
使用'|'運營商。 (../parent::td|../parent::ol|../parent::ul)
稍短:
../..[self::td or self::ol or self::ul]
用法示例:
//p[../..[self::td or self::ol or self::ul]]
你能告訴我們你在哪裏以及如何使用它? –
您提出了兩個不同的問題:如何優化它,以及如何縮短它。表達式的長度對其執行速度影響很小。請澄清這個問題。 –
@GrzegorzGórkiewicz不幸的是,我不能。請認爲它更像一個通用的問題。 – Cuder