首页 > 解决方案 > Haskell - 使用递归替换字符串中的子字符串(在我的情况下不允许使用函数 take 和 drop)

问题描述

我需要将句子中的一行替换为另一行,例如“qwer sder”“er”“ol”“qwol sdol”。我设法做类似的事情,用另一个字符替换一个字符

replace :: Char -> Char -> String -> String
replace _ _ "" = ""
replace x y (c:cs) = if c == x then y : replace x y cs else c : replace x y cs

但不知道如何用字符串(不是字符)来做到这一点。

标签: stringhaskellrecursion

解决方案



推荐阅读