Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import System.IO
- import Text.ParserCombinators.Parsec
- import Control.Monad
- doc = do char '['
- list <- many entry
- char ']'
- return list
- entry = do char '['
- list <- sepBy word (char ',')
- char ']'
- spaces
- return list
- word = do char '\''
- list <- many (noneOf "'")
- char '\''
- return list
- main = do file <- openFile "test.txt" ReadMode
- out <- openFile "out.txt" WriteMode
- text <- hGetContents file
- case parse doc "" text of
- Left a -> putStrLn ("Parsing error: " ++ show a)
- Right b -> forM_ b printout
- where printout x = do hPutStrLn out (x !! 2)
- hPutStrLn out (x !! 5)
- hPutStrLn out (x !! 6)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement