我有一個關於重構Parsec代碼使用Applicative接口的問題。假設我有使用單子接口這樣的解析器: filePath0 :: GenParser Char st Info
filePath0 = do
optional (string "./")
r <- artist
slash
l <- album
slash
t <- tr
Parsec的新手,初學者的問題。如何解析一行文件,其中一些行可能是空白的,只包含空格後跟一個換行符?我只想跳過它們,而不是在解析後的輸出中。 import Text.ParserCombinators.Parsec
-- alias for parseTest
run :: Show a => Parser a -> String -> IO()
run = parseTest
--
我學習Haskell,所以它可能是非常微不足道的,但我會很感激如何重寫它以及它如何工作的一些指針。 我有以下工作代碼(使用的包:HTF,Parsec和Flow): {-# OPTIONS_GHC -F -pgmF htfpp #-}
{-# LANGUAGE FlexibleContexts #-}
module Main where
import Test.Framework -- a
我對Haskell相當新,我試圖做一個簡單的解析器,並使用Parsec模塊。我的解析器的語法是: data Frag
= Lt String
| St
deriving (Eq, Show)
type Template = [Frag]
type FileT = Template
type CommandT = Template
data Rule
我正在使用Haskell中的Parsec模塊解析文件。這些文件的組件之一是顏色。我創建了一個類型的顏色是這樣的: data Color = Yellow | Red | Blue | Green deriving (Show)
我在解析顏色最初嘗試是這樣的: symbol :: String -> Parsec String() String
symbol s = spaces >> str