Haskell 以特定间隔拆分列表或字符串的多态函数

Haskell 以特定间隔拆分列表或字符串的多态函数,haskell,Haskell,如何将列表按特定值拆分为子列表?例如: Main>split [1,2,3,0,4,5,0,0,7,8,9] 0 [[1,2,3],[4,5],[7,8,9]] Main>split "Mary had a little lamb" ' ' ["Mary","had","a","little","lamb"] 如果您搜索正在查找的函数的签名,它可能会为您提供许多有

如何将列表按特定值拆分为子列表?例如:

Main>split [1,2,3,0,4,5,0,0,7,8,9] 0
[[1,2,3],[4,5],[7,8,9]]
Main>split "Mary had a little lamb" ' '
["Mary","had","a","little","lamb"]
如果您搜索正在查找的函数的签名,它可能会为您提供许多有用的结果。也许你正在寻找的功能就是其中之一

根据你的两个例子,你要找的签名是

[a]->a->[[a]]

如果您搜索它,您将看到一些函数的名称包含
split
,签名与之类似,即
a->[a]->[[a]]]
,这意味着它们只需要按翻转顺序使用这两个参数。

StackOverflow的副本不是家庭作业服务。做一次公平的尝试,然后带着关于该尝试的具体问题回来。看到了吗。@willemvanonsen,这不是一个复制人,我的朋友想问这个问题,但你把他锁在外面了,所以我把它改成一个更小的任务给他,这样他就不会问了;不要再等90分钟,这样就不会违反“家庭作业服务”的条款(1)这是一项没有尝试的家庭作业。(2) 正如这句话所说:“首先,你要真诚地尝试自己解决问题。如果我们看不到你做了足够多的工作,你的问题很可能会被嘘下台;它将被否决并关闭。”(3)唯一的区别是,
lsplit
不是
split
(其余部分是逐字复制);(4) 可能这违反了你们学校的学术诚信条款?