この間見つけたSpracheを試してみた。 SpracheはBison/Flexなどと同じ自分だけのDSLを作るためのパーサーを作るライブラリ。 この手のパーサーを1から書くのは非常に手間暇かかる作業で通常はやるべきではない。 (ただし本職のコンパイラ書きを除く) SpracheはC#のみで書かれC#自体の強力さと相まって非常にシンプルにDSLをパースするクラスを作成できる。 ここでは試しにkey = value形式で書かれたファイルをパースする。 あまりにつまらない例だがゲームのコンフィグファイルとかこれで十分なことが多い。 ↓パースしたい文字列。 speed = 300 health = 100 weapon = 20 ↓パース後の値を保存するクラス。 最終的には上の例だとこれのインスタンスが3個取得できればいい。 public class Property { public stri