在String:Haskell之间添加空格

Alo*_*bos -2 haskell

我试图在输入的字符串之间添加一个空格,虽然代码有效,但是当我尝试将map函数与代码结合使用时,它会在遇到空白时给出模式匹配失败,我可以用任何方式忽略空格或改进代码?

whiteSpace xs 
    | length xs <= 1        = xs
    | otherwise             = take 1 xs ++ " "++ whiteSpace (drop 1 xs)
Run Code Online (Sandbox Code Playgroud)

kar*_*kfa 5

你想实施吗? Data.List.intersperse

> intersperse ' ' "asdfasd"
"a s d f a s d"
Run Code Online (Sandbox Code Playgroud)

您的用例的基本实现可以

> let white :: String -> String
|     white []     = []
|     white [x]    = [x]
|     white (x:xs) = x:' ':white xs
Run Code Online (Sandbox Code Playgroud)