我有兩個功能:打印字符串先後
lowerString :: [Char] -> [Char]
lowerString = filter (/='_')
upperString :: [Char] -> [Char]
upperString [] = []
upperString (x:xs)
| x == '_' = x : upperString (tail xs)
| otherwise = ' ' : upperString(xs)
如果我申請他們的 「_A_B_CDEF」:
upperString "_A_B_CDEF"
將返回___
lowerString "_A_B_CDEF"
將返回ABCDEF
(不含空格)
這個想法是「有」字母(需要更大的練習)。
我從來沒有使用過Haskell輸入/輸出(實際上這是我在Haskell的第5天)。如何編寫一個接收[Char]
作爲輸入並將兩個字符串作爲輸出打印的函數?
這聽起來像家庭作業 - 你可以評論,如果它然後修復標籤?一般來說,您可以在教程中或通過hoogle找到這些信息。如[打印](http://haskell.org/hoogle/?hoogle=String+-%3E+IO+%28%29)或[閱讀字符串](http://haskell.org/hoogle/?hoogle=%圖3a%3A + IO +字串)。 – 2010-09-23 21:18:50
這不是功課。 – 2010-09-23 21:19:53
太棒了,然後看到Kennys的回答並使用hoogle(這太棒了)。你可能會很快找到'getLine'和'putStrLn'。 – 2010-09-23 21:26:53