問題タブ [lex]
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.
parsing - 同じアプリケーションで 2 つ以上の Lex/Yacc パーサーを使用することは可能ですか?
ある種類の文法用のパーサーを既に持っているアプリケーションがあり、別の目的のために別の文法を追加する必要があります。
複数持つことは可能ですか?
もしそうなら、どうやって別のエントリポイントを取得しますか?
ありがとう
デビッド・アラン・フィンチ
bison - Lex/Yacc: 入力前にメッセージを表示
lex/yacc (flex/bison) を使用しているときにメッセージ/プロンプトを表示する方法を見つけようとしています。
たとえば、メインは次のようになります。
どちらが yacc を呼び出し、どちらが yylex() を呼び出します。これにより、STDIN で待機する空白行が生成されます。のようなメッセージを表示するにはどうすればよいですか...
それ以外の
アンダースコアはカーソル位置を表し、STDIN からの入力を待機しています...
言及するのを忘れていましたが、プロンプトを繰り返し出力したいと思います...そのため、毎回 lex/yacc が stdin からの入力を要求する前に..
c - flex lexer への文字列入力
flex/bison パーサーを使用して read-eval-print ループを作成したいと考えています。問題は、flex によって生成されたレクサーが FILE* 型の入力を必要としていて、それを char* にしたいということです。とにかくこれを行うことはありますか?
1 つの提案は、パイプを作成し、それに文字列を供給し、ファイル記述子を開き、レクサーに送信することです。これはかなり単純ですが、複雑で、プラットフォームにあまり依存していないように感じます。より良い方法はありますか?
haskell - Haskell解析ツール-yacc:lex :: happy :?
つまり、 HappyはHaskellのyaccの強力な代替品のようです。lex / flexを置き換えるための同様に堅牢なレクサージェネレーターはありますか?
regex - 最高の最新のテキスト解析? AKA いつ Lex と Yacc を使うべきか?
コマンドと引数を含むテキストのブロックを入力として、1 行に 1 つずつ、次のように入力します。
そして、引数XYZ
がその特定のコマンドに対して正しい形式であることを確認し、正しい場合は正しいコード ブロックを実行したいと考えています。~100 のコマンドのようなものがあり、その中には引数の数が可変で、関係が異なるものがあります (つまり、コマンドXYZ
が呼び出された場合は、コマンドも呼び出す必要がありABC
ます)。
次のようなコマンドもあります。
テキストが と の中に含まれていることが重要COMMAND
ですENDCOMMAND
。
通常、このようなものには、正規表現ではなく Lex と Yacc を使用しますが、より現代的なものはありますか? コードは C# で記述されています。古い学校の C Lex と Yacc 以外に、これを行う MSDN はありますか?
python - lex/yaccを使用して残りのデータをトークン化する
許してください。私は構文解析とlex/yaccにまったく慣れていません。おそらく頭を悩ませていますが、それでも次のようになります。
私はPLYを使用してかなり基本的な計算機を書いていますが、その入力は必ずしも方程式であるとは限らないため、解析時にそうであるかどうかを判断する必要があります。入力の極値は、方程式に対して完全に評価され、それが細かく解析されて計算されるもの、または方程式のようなものではなく、解析に失敗して細かくされるものになります。
灰色の領域は、方程式のような部分を持つ入力であり、パーサーがその部分を取得して処理します。これは私が望んでいることではありません-エラーをスローバックできるように、文字列の一部が取得およびトークン化されていないかどうかを判断できる必要がありますが、これを行う方法がわかりません。
基本的に、「残っているものをキャッチする」トークンを定義する方法を知っている人はいますか?それとも私がこれを処理できるより良い方法はありますか?
regex - lexの正規表現
LexとYaccを使用して、MathMLからLaTeXへの簡単なトランスレータを開発しています。正規表現ルールを含む私のlexファイルには、算術演算子[-+ *=/]用に定義されたものがあります。プラスマイナス(+-)と非表示時間('&InvisibleTimes')を認識できるように拡張したいのですが、正規表現に慣れていないため、サポートが必要です。
parsing - Lex / Flex での状態の開始
パーサー ジェネレーターに Flex と Bison を使用していますが、スキャナーの開始状態に問題があります。
コメントを処理するために排他的なルールを使用していますが、この文法は引用されたトークンと一致しないようです:
この簡単な例では、次の行:
次のルールを含めない限り、コメントとして完全に一致するわけではありません。
これらすべてのトークンを排他的ルールに追加することなく、これを回避するにはどうすればよいですか?
yacc - what is the difference between lex and yacc
I have worked with lex for executing some code whenever some regular expression is found, Can Yacc do something more than that? If yes, then what?
php - Delphi での PHP/JavaScript ドキュメント構造の解析
ドキュメント関数とそのパラメーター、クラスとそのメソッド、変数などに関する情報を取得するために、PHP と JavaScript のドキュメント構造を解析する必要があります...それを行うための解決策があるかどうか疑問に思っています (正規表現はありません) ...「レクシング」と呼ばれるものについて聞いたことがありますが、これが私が探しているものであるかどうかを判断できる例でさえ、例を見つけることができませんでした...
前もって感謝します