私はC++でXMLスキャナを書こうとしています。私は理想的には正規表現ライブラリを使うほうがずっと簡単です。regexライブラリを使ってC++で語彙アナライザを作成しますか?
しかし、私はそれを行う方法のように少し困惑。ですからまず、各トークンの正規表現を言語で作成する必要があります。トークンの名前に加えて、これらの正規表現のペアをマップに格納することもできます。
次に、私は、入力ファイルを開いて、私のファイル内の文字列を反復処理し、正規表現にそれらを一致させるためにイテレータを使用したいと思います。ただし、XMLでは、文字列を区切るスペースがありません。
私の質問は、この方法でも機能しますか?また、どのように正確に私のニーズに合う正規表現ライブラリですか? regex_matchは自分のニーズに合っているので、私のスキャナは騙されることはありませんか?
私はちょうど私がこの上で作業を開始できるように、私の頭の中のプロセスのスケルトンを作成しようとしています。私は、他の人からの質問に、私が問題について正しく考えているかどうかを知りたがっていました。
私はこれについて何か考えていただきたいと思います。本当にありがとう!
なぜ車輪を改造するのですか? lex/flexは何十年も前から存在していて、すべての絡み合いが解消されています。 –
私はレキシカル分析を行う方法を学んでいます。ただ私のために生成されたコードを持っているだけではそれほど役に立ちません。 –
私はそのようなツールが有用であることに同意しますが、私はそれを自分で行う方法を学びたいと思います。 –