タグ別アーカイブ: delimiter

haskell split カンマ区切りの文字列をカンマで区切って配列にする方法


haskell で ruby の split や PHP の explode にあたるようなものを考えました。

背景

haskell を使ったことがなく、使う場面もなかなかないので CodeIQ で使ってみようと思ったものの、 「入力を受け取るにはどうすればいいんだ?」という疑問にぶちあたり、 split する方法を考えました。

Haskell には Data.List.Split モジュール内 に splitOn という関数があるのですが、 CodeIQ でコンパイルに失敗しました。 Ideone でも コンパイルに失敗しました。 ほかにも関数はあるそうなのですが、うまくいかなかったので自分で考えることにしました。

カンマで分割する方法

下のようになりました。 この方法だと カンマ でのみ区切ります。

任意のデリミタで分割する方法

任意のデリミタを指定できるようにしてみました。 1文字のデリミタでのみ分割可能です。