【发布时间】:2019-04-19 13:06:19
【问题描述】:
我正在尝试解析以下格式的字符串:
(x,y) (r,g,b)
我的文件在每一行都包含这种字符串。 我已经提取了线条,现在我想提取它的值,但我找不到令人满意的东西。 我想做类似的事情:
case str of
['(', x, ',', y, ')', ' ', '(', r, ',', g, ',', b, ')'] -> The rest
我知道它不起作用,我是 Haskell 的新手,所以我不断遇到我不理解的错误。 我怎样才能做到?
编辑: 我以前创建过这个,但是一旦创建了变量,我不知道如何真正使用它:
data Points = Point Coords Colors
data Colors = Color Float Float Float
data Coords = Coord Int Int
数字不限于一位,r、g、b 的范围是 0 到 255。
【问题讨论】:
-
您可能想了解解析器,尤其是
parsec库。
标签: string parsing haskell character point