轨道
/
Haskell
Haskell
/
练习
/
无重复字母词
无重复字母词

无重复字母词

简单

说明

判断一个单词或短语是否为等字母词。

等字母词(也叫“非模式词”)是指不含重复字母的单词或短语,不过空格和连字符可以出现多次。

等字母词的例子:

  • lumberjacks
  • background
  • downstream
  • six-year-old

不过,isograms 这个词不是等字母词,因为其中的 s 重复了。

提示

本练习处理的是文本数据。由于历史原因,Haskell 的String类型等同于[Char],也就是字符数组。若要更高效地处理文本数据,可以使用Text类型。

作为本练习的可选扩展,你可以

  • 阅读 Haskell 中关于字符串类型的内容。

  • 在 package.yaml 的依赖列表中加入 - text。

  • 按以下方式导入Data.Text:

      import qualified Data.Text as T
      import           Data.Text (Text)
    
  • 现在你可以写例如 isIsogram :: Text -> Bool,并以例如 T.toLower 的形式引用Data.Text中的组合子。

  • 查阅 Data.Text 的文档。

这部分完全是可选的。


来源

Wikipedia链接会在新窗口或新标签页中打开
通过 GitHub 编辑 链接将在新窗口或新标签页中打开
Haskell Exercism

准备好开始 无重复字母词 了吗?

注册 Exercism,借助 107 个练习 和真人导师指导,学习并掌握 Haskell,全部免费。