2010-05-17 42 views
2

我做在Haskell程序(Haskell的平臺上),我知道我得到完美的格式輸入,因此輸入可能看起來像用完美的格式化輸入作爲列表在Haskell

[ ['a'], ['b'], ['c'] ] 

我希望Haskell能夠把它作爲它自己的列表來使用它。而且,我想這個列表是多行,即,我想這也行:

[ 
    ['a'], 
    ['b'], 
    ['c'] 
] 

我可以分析該輸入,但我已經告訴有一個方法可以輕鬆地做到這一點 - 這應該是任務中「微不足道」的部分,但我不理解它。

+1

你確定輸入不是'[['a'],['b'],['c']]'(即逗號分隔),因爲那麼這將是微不足道的(使用'read') 。 – sepp2k 2010-05-17 21:53:43

+0

對不起,我更新了,這是正確的 – RankWeis 2010-05-17 21:55:07

回答

9
read "[ ['a'], ['b'], ['c'] ]" :: [[Char]] 

將返回[ ['a'], ['b'], ['c'] ]。如果將讀取結果分配給可推斷爲[[Char]]類型的變量,則不需要:: [[Char]]位。

3

有一個用於Haskell列表的Read類的實例,這意味着您可以使用read函數來有效地解析格式化爲像Haskell列表的字符串,這正是您所擁有的。