Javaのpyparsingに似たライブラリはありますか? [閉まっている]
質問
Javaのhtmlのようなマークアップ言語の非常に単純化されたバージョンのパーサーを迅速に構築する必要があります。 Pythonでは、pyparsingライブラリを使用してこれを行います。 Javaに似たようなものはありますか? html解析のために既に存在するライブラリを提案しないでください。私のアプリケーションは、訪問者パターンを使用してオブジェクトのツリーを歩き、テキストにシリアル化することを示す学校の課題です。基本的にここで必要なのは、タグ、属性、テキストノードだけです。
解決
もう1つの優れたパーサージェネレーターは、 ANTLR です。これが探しているものです。 。
他のヒント
使いすぎかもしれませんが、 javacc は、優れた産業用強度のパーサージェネレーターです。私はこのプログラム/ライブラリを数回使用しましたが、特に言語とコンパイラを使用する場合は、その信頼性と学習価値があります。上記のウェブサイトからのプログラムの説明は次のとおりです。
Javaコンパイラコンパイラ[tm](JavaCC [tm])は、Java [tm]アプリケーションで使用するための最も一般的なパーサージェネレータです。パーサージェネレーターは、グラマー仕様を読み取り、グラマーへの一致を認識できるJavaプログラムに変換するツールです。パーサージェネレーターに加えて、JavaCCは、ツリー構築(JavaCCに含まれるJJTreeと呼ばれるツールを使用)、アクション、デバッグなどのパーサー生成に関連する他の標準機能を提供します。
Javaのパーサージェネレーターをすばやく検索すると、 JParsec が生成されます。私は一度も使ったことがない-しかし、Haskellライブラリに触発されているので、定義上は良いはずだ:-)
Javaの文字列処理には、かなり多くの選択肢があります。
非常に基本的な java.util.Scanner
および java.util.StringTokenizer
クラスが役立つと思いますか?
別の良い選択は、おそらく org.apache.commons.lang.text
ライブラリです。
http://commons.apache。 org / lang / apidocs / org / apache / commons / lang / text / package-summary.html