递归删除字符我有定义为函数如下:Haskell中使用辅助功能
rmCharsRec :: String -> String -> String
我有一个辅助功能rmChar定义如下,其去除的字符中出现的所有的字符串:
rmChar :: Char -> String -> String
rmCharsRec
应删除第一个字符串中第二个字符串中每个字符的所有出现,并返回响应。
我曾尝试以下:
rmCharsRec :: String -> String -> String
rmCharsRec _ "" = ""
rmCharsRec c:chars str = rmChar (c str) ++ rmCharsRec chars
但似乎不工作。我总是得到以下错误:
file.hs:140:1: Parse error in pattern: rmCharsRec
**这不是一个家庭作业问题*。我只是想从一系列练习中学习Haskell,而我坚持这一点,因为我不明白为什么会出现错误。
有人能告诉我关于我的代码有什么问题吗?
提示:使用'foldl'遍历要删除的字符。 – Vektorweg
我将在下一个练习中使用foldl。我想通过自己实现递归和使用foldl或foldr来看到区别:)感谢提示 – roshkattu