haskell没有ruby String#split一样的方法,故设计一个。
请指教会否有性能问题。
1. splitByList xs ys =
2. let s = foldr1 (a b ->
3. filter (c ->
4. any ((==) (c + 1)) b
5. ) a
6. ) $ map (x ->
7. elemIndices x ys
8. ) xs in
9. map ((a, b) ->
10. drop a $ take b ys
11. ) $ foldl (a b ->
12. a ++ [((snd $ last a) + (length xs), b)]
13. ) [(0, head s)] ((tail s) ++ [length ys])
[ 本帖最后由 Magicloud 于 2009-8-31 14:27 编辑 ]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论