2

最近、テキストの処理 (解析) が得意でなければならないことに気付きました。HTTP 応答の解釈や設定ファイル (*.ini または *.xml または *.json) の読み取りのような単純なものから、コンパイラや正規表現エンジンの作成のような難しいものまであります。

現在、一般的な形式のテキストを解釈するためのライブラリ関数/メソッドがあることに同意します。しかし、関数を使用すると、何かが足りないと感じます。何が欠けているのかはわかりませんが、すべてに関数を使用することで自信を失っていることは間違いありません.

自信をつけるために、C でテキスト処理を試してみたいと思います。

中級レベルだが良いプロジェクトを提案できる人はいますか? 有用なプロジェクトを提案できる場合は、もう少し複雑なものも高く評価されます。

4

2 に答える 2

1

最初の、しかし潜在的に有用なプロジェクト:

  • C スタイルのコメント ( ) を含むテキスト ファイルが与えられた場合、/* ... */ファイルからコメントを削除するプロセッサを記述します。
    • これを拡張して、ネストされたコメントを処理します。
  • バックスラッシュ コマンドを処理して、C スタイルの文字列を解析してみてください。

より中間的なプロジェクトの場合は、関心のある機能ドメインについて考え、そのドメイン固有の単純な言語を作成してみてください。言語の構文解析のフロントエンド部分だけに取り組み、一度に言語の小さな部分に取り組みます。

より高度なテキスト処理を行うには、解析を行うのに役立つライブラリを探し始める必要があることがすぐにわかると思います。これは、正規表現、lex/yacc、Antlr、さらには Haskell/Parsec の研究に非常にうまくつながる可能性があると思います。いずれにせよ、もはや他人のテキスト プロセッサに頼ることはなくなります。

お役に立てれば!

于 2010-06-04T00:07:55.417 に答える
1

難しいことではありませんが、優れた CSV パーサーを実装できますか?

于 2010-06-03T23:58:08.920 に答える