xpath - NaN 和任何其他值的 XPath 1.0 比较
问题描述
我正在我的大学课程中学习 XML 和 XPath(确切地说是 XPath 1.0),我偶然发现了一些东西。Fe 如果我写一个表达式:
NaN < true()
它返回真。这很奇怪。当我做。
NaN < 1
它返回假。AFAIK XPath 1.0 比较(没有节点集)首先将值转换为数字,然后才比较它们。所以,在第一个表达式中,它是这样的
NaN < number(true())
->NaN < 1
在第二个
NaN < 1
我想深入了解这一点,所以任何信息都会有所帮助。我在文档中没有找到任何关于这种情况的信息。也许我错过了什么。
提前致谢!
解决方案
标记 NaN 不代表双值 NaN,它是child::NaN
返回空节点集的缩写(当然,除非您的 XML 文档包含名为 NaN 的元素)。
我有点惊讶一所大学应该教授 XPath 1.0,而 XPath 1.0 早已被新版本所取代。当然很多人仍在使用它,但我原以为大学会教授更新的版本。
推荐阅读
- python - Python:pd.read_csv 的 relativedelta 问题
- php - 在 wordpress 上保存/更新后更新元字段
- django - Django 用户访问控制
- sql - 似乎无法获得在 informix 上工作的外部联接
- javascript - 为什么表单数据在反应中没有保存到本地存储?
- javascript - 无法脱离 Visual Studio 2019 沙箱访问局域网
- java - 通过使用循环访问每个索引将字符串数组转换为整数数组
- python - 如何在 Python 中使用 Pandas DF 值作为字符串,以便我可以在 Selenium 中发送具有从 Pandas DF 中提取的确切值的密钥?
- javascript - 寻找匹配项目的理想组合
- javascript - 带有 Babel 和 Webpack 的 AngularJS 不加载组件控制器