Scala でパーサーを構築する 2 つのアプローチを見てきました。
1 つ目は、RegexParsers から拡張し、獲得した字句パターンを定義することです。これで私が目にする問題は、キーワードのあいまいさをどのように処理するかをよく理解していないことです. たとえば、キーワードが idents と同じパターンに一致する場合、キーワードは idents として処理されます。
それに対抗するために、StandardTokenParsers を使用してキーワードを指定する方法を示すこのような投稿を見てきました。しかし、正規表現パターンの指定方法がわかりません! はい、StandardTokenParsers には「ident」が付属していますが、必要な他のもの (複雑な浮動小数点数表現、特定の文字列リテラル パターン、エスケープの規則など) は付属していません。
キーワードを指定する機能と、正規表現を使用してトークン パターンを指定する機能の両方を取得するにはどうすればよいでしょうか?