首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实现Haskell#words

实现Haskell#words
EN

Code Review用户
提问于 2014-05-14 00:53:33
回答 1查看 2.9K关注 0票数 2

给你一个哈斯克尔显示words函数。

单词和撤销词用于将一行文本拆分成单词或将单词列表加入到文本中。

示例:

ghci>单词“嘿,这是这个句子中的单词”“嗨”、“这些”、“是”、“在”、“这个”、“句子” ghci>单词“嘿,这些是这个句子中的单词”“嗨”、“这些”、“是”、“在”、“这个”、“句子”

请批评我的执行情况。

代码语言:javascript
复制
words' :: String -> [String]
words' []  = []
words' xxs@(x:xs) 
  | x == ' '  = words' xs
  | otherwise = ys : words' rest
                  where (ys, rest) = break (== ' ') xxs
EN

回答 1

Code Review用户

回答已采纳

发布于 2014-05-14 02:06:29

words将任何空白视为分隔符,而不仅仅是空格。使用Data.Char.isSpace

不然的话没关系。

在重新实现标准库时,可以利用标准版本作为参考实现,将您的版本与:

代码语言:javascript
复制
map (\x -> words x == words' x) ["", "  ", "a", "a ", " a", "a  b", "aa bb", "aa\nbb", "a b\nc\td"]
票数 4
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/49690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档