我试图使用parsec解析haskell中的输入整数字符串。字符串可以是十进制、八进制或十六进制。基由#d、#o或#x前缀分别指定为十进制、八进制和十六进制,然后再加上整数。如果没有指定前缀,则假定基为10。parseNumber = do x <- noPrefix <|> withPrefix where noPrefix = many1,而且类型错误失败了。解决这一问题的任何替代办法
我正在使用Parsec在Haskell中解析SQL。如何确保包含where子句的语句不会将WHERE视为表名?在下面找到我的代码的一部分。p_Combination可以工作,但它将WHERE视为属性列表的一部分,而不是where子句。> "require space at the Table clause")
a <- optionMaybe (many1 (alphaNum)) <?> "space in the from