问题标签 [hxt]

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 回答
357 浏览

list - Haskell HXT 解析行和列并获取 [[String]] 而不是 [String]

我正在尝试使用 HXT 解析 ods(libreoffice 电子表格)文件并遇到问题。在电子表格中,一行有许多单元格(所有单元格名称为“cell”),而电子表格有很多行(所有单元格名称为 row)。当我尝试获取单元格的文本时,代码将它们混合在一起,最终得到一大堆不按行分隔的单元格......

尝试解析以下内容时:

使用代码:

它给出 [ABC, DEF, GHI, abc, def, ghi, 123, 456, 789] 而我想要的是 [[ABC, DEF, GHI], [abc, def, ghi], [123, 456, 789] ]。

我究竟做错了什么?

0 投票
1 回答
316 浏览

xml - 使用 HXT 解析 Haskell 中的多个子节点

我需要在 Haskell 中解析一个 XML 文件,所以我选择了 HXT。到目前为止我喜欢它,但我无法弄清楚如何做一件事。

我正在解析的文件包含作为配置文件的信息。它的结构类似于

这种标记格式让我感到畏缩,但这是我必须使用的。

我在 Haskell 中对这些中的每一个都有如下记录

我想从文件中获取数据作为Clients. 我当前的代码看起来像

但它不能编译,因为它只Row从 中得到一个返回getTable,而不是Rows 的列表。由于这是我第一次使用 HXT,我知道我做错了什么,但我不知道如何修复它。

任何帮助都会很棒,谢谢!

0 投票
1 回答
141 浏览

xml - 用 Haskell 和 HXT 同时处理两个 XML 文件

我有两个 XML 文件需要解析为一条记录。第一个文档包含大部分记录的数据,但是有一个字段包含一个标识符,用于从第二个 XML 文件中获取数据,有点像

文件 1:

文件 2:

我想做的是在解析第一个文档,从关键元素中检索值时,当我提取 的值时<reference>,我立即<ref id="1">从第二个文件中获取 的内容。

由于我对 Arrows 很陌生,这对我来说是一个相当大的挑战,要弄清楚如何去做。我能够很好地解析第一个 XML 文件,但我不知道如何传入第二个文档以按需使用。

0 投票
1 回答
87 浏览

haskell - 使用 XmlArrow 从页面中获取第 n 个元素?

按照这个页面抓取教程,作者获取页面上所有图像的集合,如下所示:

我怎样才能只获得页面上的第二张图片?getElementAt :: Int -> blah我在XmlArrow 文档中找不到任何类型的函数 。

谢谢!

0 投票
1 回答
183 浏览

xml - 如何合并具有相同属性的兄弟元素?

考虑这样的 XML 输入:

应该转换为:

(因为 和 的两个p父元素都是兄弟姐妹<i>foo</i>并且<i>bazz</i>具有相同的属性。)

如何用 HXT 箭头进行这样的转换?

0 投票
1 回答
846 浏览

xml - How to validate XML (via an XSD file) in Haskell?

I am already using HXT for transforming XML. Now I want to validate the input and output against a XSD-file.

HXT only seem to include RELAXNG and DTD validators.

I don't really care to use something else for just validating.

0 投票
2 回答
502 浏览

haskell - 在 Haskell 中使用 HXT 对 html 表行进行分组

我想处理一个(定义非常差的)html,它的信息成对分组,如下所示:

对此,经过几次迭代,我得到了这段代码来实现我想要的:

结果是: [("ABC","Here"),("EFG","There"),("HIJ","Far away")]

但是,我认为这不是一个很好的方法,必须先计算行数。有没有更好的方法使用 HXT 进行这种分组?我已经尝试过 &&& 运算符,但运气不佳。

我相信,使用 hxt 提取多个 html 表的问题虽然有用,但呈现出更简单的情况。

0 投票
1 回答
177 浏览

haskell - 多次处理一个 XML 文档

Haskell 包 hxt 的用法对我来说还是有点奇怪。尤其是箭头符号和产生的类型是一种魔法。

到目前为止,我无法管理以下内容:我想处理一个主要包含两个部分的 XML 文件。一个保留对象的定义,第二个保留对象的用途/目的。首先,我想编写一些 hxt 处理以在第 1 部分上获取 Haskell 数据结构,然后在第 2 部分处理,最后结合在程序的真实逻辑中读取的两种数据结构。

由于箭头教程,现在处理文件通常很好。但我希望现在有一个 do notation 执行三个步骤:读取文档(惰性),用第一个处理器处理一次结果结构,然后用第二个处理器再次处理相同的结构。我不希望像以下示例中那样调用“readDocument”两次。

示例数据:

所以正式的问题是:

为了得到这样的东西,monadic 在函数 play 中的表现如何:

我如何从 Monads 到 Arrows,再回到 Monads,再到纯数据再回到 Monads。

我为什么要这样做?

0 投票
1 回答
124 浏览

xml - 不要用 HXT 替换 HTML 实体

如何使用 HXT 保留 HTML 实体?SystemConfigwithSubstHTMLEntities似乎没有改变任何东西:

runX $ xshow $ readString [] "<doc><p> &gt; </p></doc>"

runX $ xshow $ readString [withSubstHTMLEntities no] "<doc><p> &gt; </p></doc>"

两者都生产

["</ source=\"\"<doc><p> &gt; </p></doc>\"\" transfer-URI=\"string:\" transfer-Message=\"OK\" transfer-Status=\"200\"><doc><p> > </p></doc><//>"]

我完全不知道在哪里看。我几乎尝试了所有其他我可以传递给的选项readDocumentreadString

谢谢

0 投票
0 回答
114 浏览

haskell - 解析大量使用标识符的 XML 数据

我正在使用带有 Haskell 的 HXT 库,并且我有一个要解析的 XML 文件,但它有很多交叉引用。例如,有一个部分:

我想将该net部分解析为一些非 XmlTree 术语(例如,State [Int] Int),然后我希望能够在解析该instance部分时使用该术语。

是否有可能做到这一点,最好不要跳入管理状态?

如果我允许直接instance引用net对象,问题是否可以解决,例如:

?