问题标签 [tinyxpath]

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.

0 投票
2 回答
196 浏览

c++ - TinyXpath v_get_xpath_base,第二个参数

我在这里将什么作为第二个参数传递给v_get_xpath_base以使其正常工作,无论我尝试什么,似乎总是有问题。该类是基类并且不能被实例化,或者该类不能被强制转换。

我很茫然,有人帮帮我吗?

就目前而言,TiXmlElement无法将其转换为const TiXmlBase*&

0 投票
1 回答
962 浏览

xml - 如何找到特定节点的子元素?使用 TinyXpath

我已经成功地将 TinyXpath 与根节点一起使用,如下所示

(这将在 MyRoot 的所有 A 下找到所有 B)

我想知道我是否可以将非根元素传递给构造函数,如下所示

(当我有 A_Element 时,我想在特定 A 下找到所有 B)

谢谢

0 投票
1 回答
62174 浏览

xml - 如何选择具有特定属性的所有元素?使用 TinyXPath

选择具有属性 A 的所有元素的 XPath 表达式是什么?

0 投票
0 回答
167 浏览

c++ - TinyXPath 没有根据给定的属性查询过滤所需的 dom 元素?

示例 XML 是:

当我的查询包含 XPath“dgn/sg/nodes/node[@type='MESH']”时,它应该只给我一个节点,但它会同时选择两个节点(Sphere 1 和 Circle 1)。如果我将 dom 元素名称从“node”更改为 xml 中的其他名称,即如果我将“node”重命名为“abc”然后像这样查询 XPath“dgn/sg/nodes/abc[@type ='MESH']" 它过滤了所需的 dom 元素,即它只给出 Sphere 1。它不会发生在任何名称为“node”以外的 dom 元素上。node 是 TinyXpath 中的关键字还是别的什么???

为什么它会发生在名为“node”的 Dom Element 上????

0 投票
1 回答
266 浏览

html - 在 TinyXPath 中如何通过元素内容索引来查询数据

我正在使用 TinyXPath 来增强现有的测试工具,以便可以获取和使用来自客户 XML 结构的数据。

XML 看起来像这样

鉴于上述我无法控制的结构,我需要能够为 TinyXPath 构造 XPath 表达式。简单地说,TinyXPath 需要在正确的子标签值匹配(解析为真)时返回给定的 SomeSetting1/2 字段中的值,以便测试应用程序可以使用它们。

我尝试了以下方法,但是使用子元素索引的方式很困难(通常我希望使用属性。这是我的尝试,它不返回结果(例如启用/禁用):-

非常感谢 TinyXPath 大师的任何进一步帮助 - 谢谢!

0 投票
1 回答
347 浏览

c++ - 为什么在两个不同的类中调用同一对象时,TinyXPath 会给出不同的结果?

我正在 Ubuntu 上构建一个项目,其中我使用 TinyXPath 库和 TinyXml 来解析以下 xml:

要找出包含的节点条目数,我使用:

显然,在一个对象中使用这个函数调用会返回实际的节点数,10;但是在另一个对象(不同的类类型)中使用它,它总是返回 0。我检查了 xml_root 在这两种情况下是否是同一个对象,并且两个对象具有相同的地址。打印内容给了我相同的xml。

相反,如果我使用 TinyXML,我会得到正确的结果,甚至可以访问所有属性并获得正确的结果。以下代码给出了正确的 no_nodes:

奇怪的部分来了。如果我在 Windows 7 上构建这个项目,它工作得很好。函数调用总是返回正确数量的节点。有没有人遇到过这种问题?

PS:我知道我没有就这个问题给出很多细节,但这是一个巨大的项目,我需要几天时间来解释它。所以这只是在黑暗中的一个镜头。

0 投票
1 回答
283 浏览

xml - TinyXPath:找不到相对后代

TinyXPath 的占用空间小,使其成为用于简单 XPath 查询的有吸引力的包。然而,它的一些功能似乎不像一个(新手)所期望的那样工作。具体来说,我似乎无法获得特定(非根)节点的琐碎后代的匹配。这个问题涉及一个几乎相同的问题,但是当 XPath 表达式针对最近的孩子之外的后代时,建议的答案不起作用。

示例输入(test.xml):

代码:

o_xpath_node 内部的 xpath_processor 没有报错;根本没有匹配项。

我也尝试了这个答案中的公式——它确实返回了一个匹配项,但是它只返回节点 C,而不是 C/D。

有人有类似的问题吗?我是否错误地格式化了 XPath 表达式?

我曾希望 TinyXPath 文档可以提供一些指示,但是...

文档!是!斯巴达!

干杯,

克拉斯

0 投票
1 回答
184 浏览

c++ - tinyxpath 1.3.1 是否支持 xpath 2.0?

我在使用 tinyxpath 1.3.1 计算复杂的 xpath 时遇到了一些麻烦。这些 xpath 在此在线 xpath 测试器中完美计算:http ://www.qutoric.com/xslt/analyser/xpathtool.html 。

我正在使用的 xpath 示例:

tinyxpath 1.3.1 是否支持 xpath 2.0?

0 投票
1 回答
207 浏览

xml - 我需要一种方法来提取标签之间的值,给定 XML 中的路径。我该如何使用 TinyXpath 呢?

XML 示例:

如果 Xml 文件如上所示,并且我给出了输入路径“第一个节点/第二个节点”,那么我必须能够得到“hello”的结果。

如果输入路径是“第一个节点/第三个节点”,结果应该是“abcd”

0 投票
2 回答
1403 浏览

c++ - 有没有办法使用 C++/Boost 或使用其他库从 xml 标签中删除命名空间

在C++中有没有办法,使用TinyxmlTinyXpath,这样,一个字符串包含:

转换为

编辑:

我使用的是 Tinyxml 和 Tinyxpath。

我的工作流程是:

a) 使用 TinyXML 创建一个 dom-tree

b) 将 dom-tree 传递给 Tinyxpath 以进行 xpath 评估

要添加命名空间删除,我使用了以下功能:

因此工作流程更改为:

a) 使用 TinyXML 创建一个 dom-tree

b) 使用从 domtree 中删除命名空间RemoveAllNamespaces(domtree.Root() )

c) 将 modified-dom-tree 传递给 Tinyxpath 以进行 xpath 评估