ocamlのファイルからコンテンツを読み取る方法は?具体的にはそれらを解析する方法は?
例 :
ファイルに次のものが含まれているとします(a,b,c);(b,c,d)| (a,b,c,d);(b,c,d,e)|
これを読んだ後、私はとを含む2つのリストが必要l1 = [(a,b,c);(b,c,d)]
ですl2 = [(a,b,c,d);(b,c,d,e)]
構文解析のための良いチュートリアルはありますか?
ocamlのファイルからコンテンツを読み取る方法は?具体的にはそれらを解析する方法は?
例 :
ファイルに次のものが含まれているとします(a,b,c);(b,c,d)| (a,b,c,d);(b,c,d,e)|
これを読んだ後、私はとを含む2つのリストが必要l1 = [(a,b,c);(b,c,d)]
ですl2 = [(a,b,c,d);(b,c,d,e)]
構文解析のための良いチュートリアルはありますか?
これは、 menhirパーサージェネレーター(の後継)の良いユースケースですocamlyacc
。字句解析に使用することをお勧めしますocamllex
。すべてに優れたドキュメントがあります。
camlp4またはcamlp5ストリーム解析機能を使用することもできます。
私は、このようなものにPEGパーサーであるAurochsを使用する傾向があります。そこのリポジトリにサンプルコードがあります。