問題タブ [lexer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4019 参照

java - どこかにJava文字列リテラルのjflex仕様はありますか?

また、文字列リテラルとは、の\123ような文字も含むものを意味します。私は何かを書いたが、それが完璧かどうかわからない:

実際、これが完璧ではないことはわかっています。なぜなら、\ddd-like 文字を解析する 3 行では、文字自体を文字列に入れるのではなく、その表現を文字列に入れるからです。文字メソッドを使用して変換しようとするかもしれませんが、網羅的ではないかもしれません。処理しなかった他のエスケープシーケンスがあるかもしれません....そのための正規のjflexファイルがあれば完璧です。

0 投票する
1 に答える
113 参照

parsing - 正規表現トークン antlrV3

初期トークンが部分的に固定され、部分的に一般的なルールを作成できますか?

ただし、トークン ID が var* の形式の場合のみ (var は固定)

ありがとう

0 投票する
2 に答える
2763 参照

filter - 複合文法ANTLRオプションフィルター

文法を組み合わせています(同じファイルにレクサーとパーサーがあります)。設定するにはどうすればよいですか

レクサーに?

ありがとう

0 投票する
5 に答える
9609 参照

programming-languages - アプリケーションでプログラミング言語をトークン化して解析するための最良の方法

私はプログラムでいくつかの簡単な変換を実行するツール(extractメソッドなど)に取り組んでいます。これを行うには、コンパイルの最初のいくつかのステップ(トークン化、解析、場合によってはシンボルテーブルの作成)を実行する必要があります。Cから始めて、うまくいけば、これを拡張して複数の言語をサポートします。

私の質問は、これらの手順を実行するための最良の方法は何ですか?

1.)車輪の再発明はしません。明らかに、Flex/Bisonの仕様を手作業で書きたくありません。既存の仕様を取得してそこから作業するだけですか?Antlrはここに行く方法ですか?

2.)複数の言語に拡張可能です。もちろん、字句解析/構文解析は人によって異なりますが、他の言語に簡単に拡張できるソリューションが必要です。少なくとも、これを管理しやすくする一連のテクノロジー。

ところで、私はアプリケーションを書くためにCを使用しています

誰かが素晴らしいアイデアを持っているなら!ありがとう!

0 投票する
1 に答える
7710 参照

c++ - ANTLR で動作する C++ 文法ファイルはありますか?

ANTLR 用の既存の C++ 文法ファイルはありますか?

一部の C++ ソース コード ファイルを解析するのではなく、lex を探しています。

ANTLR 文法ページを調べたところ、Sun Microsystems によって作成されたものがここにリストされているようです。

ただし、生成されたパーサーのようです。

C++ ANTLR レクサーまたは文法ファイルを教えてもらえますか?

0 投票する
4 に答える
1957 参照

parsing - ANTLR文法:パーサーおよびレクサーリテラル

この文法の違いは何ですか:

この:

違いがある場合、これはパフォーマンスに影響を与えるため...ありがとう

0 投票する
1 に答える
734 参照

parsing - Lexer antlr3 トークンの問題

トークンを作成できますか

PREENDPLUS に含めずにトークンが前にある場合にのみ、レクサーによって考慮されますか?

ありがとう。

0 投票する
2 に答える
625 参照

string - 文字列再帰 antlr lexer トークン

この文字列として内部で再帰を処理できるレクサーでトークンを作成するにはどうすればよいですか。

?

0 投票する
2 に答える
1432 参照

java - 島の文法antlr3

antlr3の「島の文法」とは何ですか?

0 投票する
1 に答える
192 参照

ruby - Rubyの正規表現は、特定の文字列を特別な条件で一致させます

現在、正規表現を使用してドキュメントをトークンに解析しようとしています。

現在、ドキュメント内のキーワードを一致させようとしています。たとえば、次のドキュメントがあります。

一致する必要があるキーワードは、Func、Return、および EndFunc です。

次の正規表現を思いつきました: (\s|^)(Func)(\s|$) は Func キーワードに一致しますが、希望どおりには機能しません。空白も一致します!

空白をキャプチャせずに一致させるにはどうすればよいですか?