問題タブ [jflex]

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 投票する
1 に答える
1998 参照

regex - JFlex - 「矢印」の正規表現

したがって、JFlex の正規表現を介して矢印文字 --> を入力したい場合、文字列 "-->" だけになると思います。ただし、これを試みると、常に入力エラーが一致しませんでした。

うまくいきません。私が知る限り、特定の文字をエスケープする組み合わせもありません。これらの文字のそれぞれが flex では特別であることを知っています。また、他の言語で機能する /-->/ リテラルな方法が Java では機能しないことも知っています。

私は何が欠けていますか?

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

java - JFlex エラー: 予期しない文字: YYINITIAL

次の入力ファイルで JFlex を使用しようとしています。

(まだ 100% 完成していません。エラーがないか確認中です)

とにかく、JFlex を使用しようとすると、次のエラーが表示されます。

スキャナーが開始する場所だと思っていましたが、デフォルトでは常に宣言されていますか? 何か不足していますか?

ご協力ありがとうございました。

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

java - JAVA ファイルの JFlex コンパイル エラー

私はJFlexの初心者です。私はUbuntuに取り組んでおり、JavaとJFlexをインストールしました。java コマンドと jflex コマンドの両方が機能しているため、PATH 変数が適切に設定されています。jflex ファイルを実行すると、エラーなしで実行されますが、.java ファイルの実行中には、sym に関する一連のエラーが発生します。私の実行行は以下の通りです...

エラーは次のとおりです。

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

java - Is it possible to construct an Yylex object by using an String?

Recently i've been working with Jflex and i noticed that when i try to construct the Yylex object it only accepts java.io.Reader and java.io.InputStream. How could i do if i just want to build the object by using only a String?, like this:

In the system i'm trying to build i want the user to write something and then apply the Yylex method to it. In the models i saw that were similar to my idea the user inputs an String and then it is written into a file from where the Yylex will read.

Is it possible to do that? or i'm misunderstanding something?. Is there any other tool you would reccomend instead of Jflex?

Thanks!

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

jflex - コンパイルする JFlex 出力を取得できません

C のサブセット用のコンパイラを作成する必要があり、JFlex と Cup を使用することにしました。ただし、.jflexファイルを作成すると、JFlex で正常にコンパイルされますが、出力 (.java ファイル) はコンパイルされません。

ディレクトリ:

したがって、実行するコマンドは次のとおりです。

次のエラーが発生し続けます。

基本的に、それはクラスを知らないsymと思います。例に従って基本的なバージョンを機能させようとしていますが、管理していません。ポインタはありますか?

編集:

JFlex マニュアルの例を入力してコンパイルしようとしましたが、同じエラーが発生します。だから私は何か間違ったことをしているに違いない。ポインタはありますか?

tinyc.jflex:

0 投票する
3 に答える
4911 参照

jflex - CUP で EOF トークンを解析する

CUP パーサーが EOF トークンを解析するのに問題があります。%cupJflexコードでフラグを使用すると、次のようなものが存在することを意味するというドキュメントを読みました。

これはすべて問題ありませんが、文法 (CUP ファイル) で次の最初の規則を試してみると、次のようになります。

EOF が CUP によって宣言されていないというエラー メッセージが表示されます。

わかりましたので、CUP ファイルに以下を追加します。

いいえ、CUP が教えてくれるからです。

ただし、終端の EOF を定義せずに、sym.javaCup が生成するクラスを調べたところ、次のことがわかりました。

だから私はこれを修正する方法についてかなり迷っています。両方のドキュメントは、この問題について非常に曖昧です。

編集: EOF トークンを解析したい主な理由は、最後にシンボル テーブルとその他のものをデバッグ目的で出力したいからです。

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

jflex - この最も単純な jflex コードの何が問題なのですか?

私はjflexを学んでいて、単一の文字を作る最も単純なjflexコードを書きました#:

次に、PubspecLexerクラスを生成して試します。

しかし、それは3null秒を出力します:

なぜ返さCommentないのBadCharacterですか?

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

regex - jflex(flex)レクサーで「\ S」を使用するには?

スペース以外の文字を一致させたいので、JFlex で flex ファイルを定義しました。

次に、生成された Java コードで文字列「abc」を分析しようとしましたが、次のようになりました。

宣言を次のように変更すると:

次に、期待される結果を得ることができます:

なぜ\S機能しないのですか?「非空白」という意味ではありませんか?

0 投票する
0 に答える
246 参照

yaml - JFlex/flex を使用して YAML のレクサーを作成するのは良い選択ですか?

JFlex を使用して YAML のレクサーを作成しようとしていますが、次の理由から難しいことがわかりました。

  1. YAML ではインデントはセンシティブです
  2. 次のような複数行の文字列があります。

    実装するのは難しいです。

それらの正しいトークンタイプを決定して返す方法がわかりません。

JFlex を使用するのは良い選択でしょうか? または、YAML 用の他のツールが必要ですか?