トラック
/
Haskell
Haskell
/
演習
/
アイソグラム
アイソグラム

アイソグラム

初級

説明

単語やフレーズがイソグラムかどうかを判定します。

イソグラム(別名「non-pattern word」)とは、文字が繰り返し現れない単語やフレーズのことです。ただし、スペースとハイフンは何度現れてもかまいません。

イソグラムの例:

  • 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と書いたり、Data.Textのコンビネーターを、例えばT.toLowerのように参照できるようになります。

  • Data.Textのドキュメントを調べてみましょう。

この部分は完全に任意です。


出典

Wikipediaリンクは新しいウィンドウまたはタブで開きます
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Haskell Exercism

アイソグラムを始める準備はできましたか?

Exercismに登録すれば、107個の演習、そして本物の人間によるメンタリングとともに、Haskellを学んでマスターできます。すべて無料です。