图库的 xml 树解析器 (Haskell)
我正在编写一个用于处理图形的库。 主要任务 - 解析 xml-tree。 该树看起来像用于
<graph nodes=4 arcs=5>
<node id=1 />
<node id=2 />
<node id=3 />
<node id=4 />
<arc from=1 to=2 />
<arc from=1 to=3 />
<arc from=1 to=4 />
<arc from=2 to=4 />
<arc from=3 to=4 />
</graph>
存储的结构:
type Id = Int
data Node = Node Id deriving (Show)
data Arc = Arc Id Id deriving (Show)
data Graph = Graph { nodes :: [Node],
arcs :: [Arc]}
如何将xml文件中的数据写入该结构中? 我无法为这种类型的 xml 树编写解析器(HXT 库)
I'm writing a library for working with graphs.
The primary task - parsing xml-tree.
The tree looks like
<graph nodes=4 arcs=5>
<node id=1 />
<node id=2 />
<node id=3 />
<node id=4 />
<arc from=1 to=2 />
<arc from=1 to=3 />
<arc from=1 to=4 />
<arc from=2 to=4 />
<arc from=3 to=4 />
</graph>
Structure for storing:
type Id = Int
data Node = Node Id deriving (Show)
data Arc = Arc Id Id deriving (Show)
data Graph = Graph { nodes :: [Node],
arcs :: [Arc]}
How to write data from the xml file into this structure?
I can not write a parser for xml tree of this kind (HXT library)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您需要使用 XML 库吗? 'tagsoup' 库对于 not-really-xml 可能同样有效,如下所示:
运行此:
Do you need to use an XML library? The 'tagsoup' library might be just as effective for not-really-xml like this:
Running this:
假设您将其转换为正确的 XML(用引号将所有属性值括起来),则以下代码将起作用(使用 xml-enumerator):
输出:
Assuming that you convert that into proper XML (surround all the attribute values with quotes), the following code will work (using xml-enumerator):
Outputs: