putStrで示されていると、バスの時刻表を生成する文字列があります。文字列をタプルのリストに変換する方法は?
それはこのようなものになります。 "4 | 12 32 52 \ N5 | 12 32 52 \ n" は私が仕事に必要なもの
は、このフォームにそれを変更することです: [{4、[ 12 32 52]}、{5、[12 32 52]}] 私は仕事が必要です。
解決しないでください。ちょっとしたアイデアや助けてくれる機能を教えてください。ダニエル
putStrで示されていると、バスの時刻表を生成する文字列があります。文字列をタプルのリストに変換する方法は?
それはこのようなものになります。 "4 | 12 32 52 \ N5 | 12 32 52 \ n" は私が仕事に必要なもの
は、このフォームにそれを変更することです: [{4、[ 12 32 52]}、{5、[12 32 52]}] 私は仕事が必要です。
解決しないでください。ちょっとしたアイデアや助けてくれる機能を教えてください。ダニエル
を
また、我々はGROUPBYを使用するように言われたが、グループおよびGROUPBYのために私は、「しない範囲で」取得します!
ええ、あなたを助けるのにgroupByを使うことができます。 hoogle
そして、ここ2つの素敵な例です:
ここでは、docだ - >だから、
、あなたは(あなたの関数に何を決めなきゃ - > Bool)を使用して、必要な方法をグループ化します。 また、1つのグループ基準または複数のグループ基準が必要かどうかを判断する必要があります。 "a | b \ na | b \ n"というパターンを持っていると言えます。グループ化のために "切り取る"場所を決定する必要がありますが、 "a"と "b" 。
これだけです。
私は助けてくれることを願っています。
'group'と' groupBy'の両方が、インポートリストに追加する必要があるData.Listモジュールにあります。 [Hoogle](http://hoogle.haskell.org/?hoogle=groupBy)を使用して、機能を名前またはタイプシグネチャで検索し、それらがどのモジュールであるかを識別することができます。 文字列を個々の行に分割するのに便利な[unlines](https://hackage.haskell.org/package/base-4.9.0.0/docs/Prelude.html#v:lines)と 'readManyあなたの文字列からIntsを抽出するための[this post](http://stackoverflow.com/questions/20176706/reading-ints-in-haskell/20177526#20177526)の関数です。 – ppb
haskellでは、タプルのリストは[(4、[12、32、52])、(5、[12、32、52])] – wizzup