背景を説明するだけです。私たちには、C で独自のコンパイラーを作成する必要がある学校のプロジェクトがあります。私の仕事は、字句解析を作成することです。ここまでは順調ですが、エスケープ シーケンスに問題があります。
エスケープ シーケンスを見つけ、そのエスケープ シーケンスが正しい場合、この\xAFのような文字列に保存します。それ以外の場合は字句エラーです。
私の問題は、エスケープ シーケンスのみを含む文字列を 1 つの文字に変換する方法です。したがって、残りの文字列を含む「バッファ」に追加できます。
エスケープ シーケンスのみを含む大規模なテーブルを作成し、それを 1 つずつ比較するというアイデアがありましたが、エレガントに見えません。