XPath1.0中是否存在異或'異或'?XPath中是否存在異或'XOR'?
13
A
回答
15
使用這個XPath 1.0表達式:
x and not(y) or y and not(x)
總是儘量避免!=
操作,因爲它有一個意想不到的意義/當其一個或兩個參數都是節點集時的行爲。
在XSLT 2.0或XQuery 1.0中,可以將其編寫爲函數,然後在任何XPath表達式中使用該函數。下面是用於xor
一個XSLT 2.0函數定義並使用該函數的一個小例子:
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:f="my:f">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:sequence select=
"for $x in (true(), false()),
$y in (true(), false())
return
('xor(', $x, ',', $y,') = ', f:xor($x, $y), '
')
"/>
</xsl:template>
<xsl:function name="f:xor">
<xsl:param name="pX" as="xs:boolean"/>
<xsl:param name="pY" as="xs:boolean"/>
<xsl:sequence select=
"$pX and not($pY) or $pY and not($pX)"/>
</xsl:function>
</xsl:stylesheet>
當這種轉化是在任何XML文檔(未使用)施加時,想要的,正確的結果產生:
xor(true , true) = false
xor(true , false) = true
xor(false , true) = true
xor(false , false) = false
4
0
number($boolean_var)
轉換true()
到1
和false()
到0
。 (注意,單獨true
解決一個節點!!)
boolean($numeric_var)
轉換1
到true()
和0
到false()
。使用操作者mod 2
boolean((number($v1) + number($v2) + number($v3)) mod 2)
即至少-顯著位加法:
因此,XOR可以通過來完成。是的,XPATH很麻煩。
相關問題
- 1. XPath選擇器中是否存在「或」?
- 2. 在內存中x ++和++ x之間是否存在差異?相對於語言?
- 3. Casperjs檢查xpath是否存在
- 4. Scrapy檢測Xpath是否存在
- 5. 檢查XPath是否存在元素
- 6. xpath查找是否存在節點
- 7. 在Python中,x == x是否是False?
- 8. p(x)⇒∀x.p(x)是否或然?
- 9. 循環中是否存在ConcurrentModificationException異常
- 10. 使用Date vs DateTime時是否存在性能差異或存儲差異?
- 11. PHP檢查行號x是否存在
- 12. PostgreSQL是否存在於OS X Mavericks上?
- 13. CSS border-radius x y是否存在?
- 14. 通過cmd行或GUI設置JAVA_HOME是否存在差異
- 15. XPATH驗證html中是否存在文本
- 16. 如何檢查lxml xpath中是否存在元素?
- 17. MSXML中是否存在XPath查詢的最大長度?
- 18. 檢查xml標籤是否存在於xpath中。
- 19. 如何檢查XML中是否存在xpath /元素?
- 20. 爪哇最大存儲器differes是否X毫秒= XMX或不
- 21. Adplus fullonfirst是否存在特定異常?
- 22. 「/\((.*)\)/」和「/ \(([^ \)] *)\)/」之間是否存在差異?
- 23. 檢查數字是否爲 - ,+或x
- 24. Mac OS X 10.6中的NSOperation中是否存在錯誤?
- 25. 檢查表中是否存在值或處理MySQL唯一約束異常?
- 26. rabbitmq中的連接池或通道之間是否存在性能差異?
- 27. 是否存在檢查字符串是否有效的xpath的方法?
- 28. 內存是否出現異常或錯誤?
- 29. 'netsend'或'net send'是否存在?
- 30. 比較是否存在datetime.datetime或無
+ XPath 2.0功能的一個很好的例子,以及一個能夠徹底演示功能的演示程序。 (並避免棘手的存在對比。) – LarsH