TLDR: 形式ごとに異なるコードを使用して多目的パーサーを手動で作成した場合、パーサー コードの 1 つのチャンクと ANTLR、PyParsing、または同様の文法を使用して各形式を指定すると、長期的にはうまく機能しますか?
コンテキスト: 私の仕事には、約 50 の異なるベンチマークからの多くのベンチマーク ログ ファイルが含まれます。XML、HTML、CSV、および文書化された仕様のない多くの独自のものがあります。私と同僚がこのデータを手で入力する時間を節約するために、統一されたインターフェイスで定期的に扱うすべての形式を処理する解析ツールを作成しました。ただし、デザインはそれほどきれいではありません。
これを Python で書き、Parser クラスを作成しました。各ファイル形式は、パーサーの read() メソッドに独自のコードを提供する実装として処理されます。文法を使用して各形式を理解する Parser の定義を 1 つだけ持つというアイデアは気に入っていますが、これまでに行ったことはありません。
時間をかける価値はありますか? また、リファクタリングが完了したら、将来、他の初心者が作業しやすくなりますか?