问题标签 [xpathnavigator]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - VB.NET:XPath 问题
我有以下 XML:
和代码:
我想进入第一次迭代“automática”,然后进入最后一个“diária”。怎么了?我怎么能解决这个问题?谢谢你。
xml - 如何使用 Xpath(使用 XSLT)查询返回到 XML 文件中的父节点?
让我们有一个深度为 N 的 xml 树。我已经遍历了最后一个节点,这意味着我在最后一个音符。现在我想从最后一个节点返回到 xml 树中的某个级别(比如在 N-3 处)。
请让我知道 XPATH 查询的语法,以便我可以到达 xml 树中的预期节点。
c# - 使用 XPathNavigator 重命名元素
我有一个指向 XML 元素的 XPathNavigator 对象。我想将元素重命名为另一个名称(并重命名关联的结束元素)。这可以使用 XPathNavigator 完成吗?
(我有一个解决方法,即删除元素并以不同的名称重新插入它,但这可能会导致性能问题,因为我正在处理非常大的文档)
c# - 在 C# 中使用 XPathNavigator 添加和操作多个子节点
我正在编写对 XML 进行(反)序列化的类。在序列化和反序列化时,该类获取一个 XPathNavigator 以从中获取数据/向其中添加数据。
因为该类可能包含也需要序列化的对象(使用相同的机制),所以我执行以下操作来为每个对象添加一个子元素:
特别是 MoveToParent/Move to last child 部分似乎非常错误(尽管它有效)。有一个更好的方法吗?
我使用的另一种方法(以避免对象访问到目前为止存储的信息)是:
这两种方法似乎都是间接的,因为它们都会产生大量开销。我会就如何改进我的算法提出任何想法或提示。
问候,多米尼克
xpath - 从部分获取完整的 XPath
我正在使用 selenium 和 perl 并在页面上有标签,要访问此标签我有以下 xpath: //*[text()='some here']
,需要获取此元素的完整 xpath 的问题,例如/html/body/table/tr/..../any other/and other/
,是否有任何 selenium 方法或 perl 函数?寻找 perl 解决方案或任何其他工作的东西。
谢谢
c# - XPathNavigator 帮助
这是我正在使用的 XML 示例(可从任何 wiki 的 Special:Export/SomePage 结果中检索):
我已经尝试了所有我能想到的直接“跳转”到 siteinfo 节点并迭代结果的方法,除非我从根目录向下手动导航每个子节点,否则没有任何效果。我已经尝试了各种 .Move* 和 .Select* 方法的一百万种变体,似乎我只是把头撞到墙上,但我当前的变体看起来像这样:
这不返回任何结果。我究竟做错了什么?
c# - 使用 XPath 查询从匹配的 XML 节点获取属性值
这似乎不应该是困难的,但我目前被卡住了。我正在尝试从与给定 XPath 查询字符串匹配的节点中获取特定属性的属性值。这是我到目前为止所拥有的:
这当前会引发异常:
System.InvalidCastException:无法将“MS.Internal.Xml.Cache.XPathDocumentNavigator”类型的对象转换为“System.Xml.IHasXmlNode”类型。
我要解决这个问题了吗?有没有更简单的方法从匹配节点获取属性值?
.net - 如何获取 XPathNavigator 所在的 XmlNode 的 XPath?
dom4j(一个非常好的 Java XML 库)有一个非常有用的调用。在其 XPathNavigator 对象的等效项上,您可以请求一个唯一的 Xpath 语句,该语句将为您提供该特定节点。如何使用 .NET XML 库获得此信息?
c# - 仅使用 XPathNodeIterator 选择子节点后,我的 InnerXML 等于我的 OuterXML
我使用的代码是:
结果是 iterator.Current.InnerXml 与 iterator.Current.OuterXml 相同,这与原始 m_myXML 相同。当我通过 iterator.MoveNext() 将迭代器移动到下一个时,它指向第一个 child1 - 这就是我一开始就期望的。
难道我做错了什么?是否有关于 System.Xml 等应该如何运作的假人的详细解释?