Haskell と Parsec は初めてです。文字列 's:numb:"string";' の php-serialize 形式を解析したい お気に入り
s:12:"123";6789012";
number は文字数です。したがって、関数は次のようになります。
newtype PhpString = PhpString String
pString :: GenParser Char st PhpString
pString = do { string "s:"
; value1 <- many1 digit
; string ":\""
; value2 <- takeExactNChars (read value1)
; string "\";"
; return $ PhpString value2
}
where
takeExactNChars n = ???????