重複の可能性:
ファイルを ML(SMLNJ) で開く
次のような値を持つ文字列値があります。
"[(1,2,3),(2,3),(6,8)]" -> string
しかし、これらの値を次のように int 型にしたい:
[(1,2,3),(2,3),(6,8)] -> (int list) list
どうすればいいですか?私を助けることができる機能はありますか? または私は自分でそれをしなければなりませんか?
重複の可能性:
ファイルを ML(SMLNJ) で開く
次のような値を持つ文字列値があります。
"[(1,2,3),(2,3),(6,8)]" -> string
しかし、これらの値を次のように int 型にしたい:
[(1,2,3),(2,3),(6,8)] -> (int list) list
どうすればいいですか?私を助けることができる機能はありますか? または私は自分でそれをしなければなりませんか?
この問題は、コンビネータの解析に最適です。これは、私の友人であるハーバード大学の Greg Morrisett から盗むことができます。
根底にあるアイデアを理解したい場合は、Graham Hutton の論文Higher-Order Functions for Parsing を読んでください。Standard ML で I/O を実装する方法を知りたい場合は、Standard Basis LibraryのTextIO
モジュールを参照してください。誰かにコードを書いてもらいたい場合は、間違った Web サイトにアクセスしている可能性があります。
stringint
モジュールから使用できString
ます。たとえば、http://wwwcgi.rdg.ac.uk:8081 / cgi-bin / cgiwrap / wsi14 / poplog / ml / help / string#Character%20Transformation%20Functionsを参照してください。