私はString
のように"1 2 3 4 5"
を持っています。 Haskellの[1,2,3,4,5]
のような整数のリストに変換するにはどうすればいいですか?リストが"12345"
の場合はどうなりますか?文字列をHaskellの整数のリストに変換するには
答えて
あなたはここで我々は["1", "2", "3", "4", "5"]
を得るように空白に"1 2 3 4 5"
を分割するwords
を使用
Prelude> map read $ words "1 2 3 4 5" :: [Int]
[1,2,3,4,5]
を使用することができます。 read
関数は、個々の文字列を整数に変換できるようになりました。それはタイプRead a => String -> a
を持っているので、実際にRead
タイプのクラスにあるものに変換することができ、それにはInt
が含まれています。上記の型を指定する必要がある戻り型の型変数のためです。
スペースを含まない文字列の場合、各Char
を単一要素のリストに変換する必要があります。これは、(:"")
を適用することによって行うことができます。String
は、単なるChar
のリストです。 digitToIntと呼ばれるモジュールData.Charで定義された関数であり
Prelude> map (read . (:"")) "12345" :: [Int]
[1,2,3,4,5]
おかげでたくさんのマーティン.. uロック.. –
:私たちは、それ以前のように再びread
を適用します。文字が16進数字として解釈される限り、それは文字を受け取り、数字を返します。
この関数を最初の例で使用する場合、数字がスペースで区切られている場合は、スペースを避ける必要があります。
> map digitToInt "1212121"
[1,2,1,2,1,2,1]
私は推測すると思いますが、フィルタを必要としないので、あなたは全く分離されていない数字は、さらに簡単です単純なフィルタ
> map digitToInt $ filter (/=' ') "1 2 1 2 1 2 1"
[1,2,1,2,1,2,1]
第2の例でそれを行うことができますdigitToIntは、式の型に依存しないため、読みにくくなる可能性があります(これはどのようにしてこのポスト= Pを見つけたのですか)。とにかく、私はhaskellに新しいので、間違っているかもしれない=)。
あなたは使用することができます。
> [read [x] :: Int | x <- string]
- 1. 整数のリストに文字列を変換する
- 2. 数字の文字配列を整数に変換する
- 3. 文字列を整数に変換
- 4. 文字列を整数に変換してテストするには?
- 5. 文字列を整数に変換するには?
- 6. PHPで文字列を整数に変換するには?
- 7. 文字列をそのascii値の整数に変換する
- 8. 整数を文字に変換する
- 9. Pythonの文字列リストを文字列に変換する
- 10. 追記:整数を文字列に変換する方法は?
- 11. 文字列配列を整数に変換する
- 12. 単語の整数表現を文字列に変換する
- 13. 文字列を整数のセクションに変換するC++
- 14. Schemeの文字列を整数に変換する
- 15. アルファベット文字列をC#の整数に変換する
- 16. 文字列のシーケンスを整数に変換する(Clojure)
- 17. PHPのバイナリ文字列を整数に変換する
- 18. 整数を文字の配列に変換する:java
- 19. 数字の文字列を任意の整数の形式に変換する
- 20. 整数の文字列をint配列に変換するには?
- 21. 変換文字列は、整数に文字列内の数字を分離し、変数
- 22. pythonリストの文字列をリストのリストに変換する
- 23. 特定の文字を整数に変換するC#文字列
- 24. Jackson JSONは整数を文字列に変換します
- 25. Pythonで文字列のリストをUnicode文字に変換する
- 26. 文字列を整数に変換する
- 27. oracleで文字列を整数に変換する
- 28. 時間文字列を整数に変換する
- 29. 符号なし文字配列を整数に変換する
- 30. バイナリ文字列を整数に変換する
-1、あなたはあなたがしようとしているコードを追加することはできますか? – Reddy