【发布时间】:2015-05-30 19:03:31
【问题描述】:
如何给予
break (== ' ') xxs
多个布尔参数而不改变定义?或者这是不可避免的。比如
break (== (' ' || '\t' || '\n')) xss
foldl 和foldr 是一种方式,但在这里它们不适用,或者至少我无法使用它们。
【问题讨论】:
-
break (flip elem " \t\n")? -
你可以给
break任何函数作为它的第一个参数。因此,您可以创建一个新函数作为您想要的谓词并将其传递给break。 -
@Zeta 是的,它有效,但你能解释一下吗?
-
elem检查列表中是否有某些内容,因此这将检查参数是'\t'还是'\n'(字符串是字符列表) - 现在elem想要它的参数顺序错误 Zeta 必须先flip函数 -
参见:
Data.Char.isSpace,Prelude.words。
标签: function haskell parameters arguments fold