問題タブ [grammar]

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 に答える
153 参照

java - 問題文に必要な文法定義

こんにちは、今のところこの文法がありますが、サービス後にメモがあります。Antlr はそれがサービスではないことを認識したくありませんが、注意してください。また、サービスとノートは構造が異なります。これはどうやって書くの?

これを解析しようとしています。ただし、bla bla に注意してください。サービス中です

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

textmate - TextMate 言語パーサーはどこにありますか?

TextMate が構文の強調表示に使用するコードがどこに埋め込まれているか知っている人はいますか? そうでない場合、彼らが言語構文をどのように解析するか、または言語構文をどのように解析するか知っていますか?

それは調べてみると素晴らしいでしょう。

ありがとう!ランス

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

c# - C#3.0の文法はどこにありますか?

C#でC#3.0コンパイラを作成することを計画しています。パーサー生成の文法はどこで入手できますか?

できれば、変更なしでANTLRv3で動作するもの。

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

parsing - OCamlを使用した文法の解析

OCamlを使用して(おもちゃの)文法の(おもちゃの)パーサーを作成するタスクがありますが、この問題を開始(および続行)する方法がわかりません。

Awkの文法の例を次に示します。

そして、ここに解析するいくつかのフラグメントがあります:

私が探しているのは、frag1 ["4";の場合のように、フラグメントを解析した結果であるルールリストです。"+"; "3"]:

制限は、リスト以外のOCamlライブラリを使用しないことです...:/

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

parsing - E := EE+|EE-|id の左再帰の削除

次の文法の左再帰をなくす方法は?

一般的な手順を使用します。

に変換:

これを元の文法に適用すると、次のようになります。

したがって:

しかし、この文法は間違っているようです。

は有効ですが、これは正しくない後置式です。

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

regex - Ruby には Perl 6 文法に似たアドオンがありますか?

Perl は、何年もの間、私の頼りになるプログラミング言語ツールの 1 つです。Perl 6 の文法は優れた言語機能のようです。誰かが Ruby でこのようなことを始めたかどうか知りたいです。

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

parsing - この文法で E の最初のセットを決定する方法は?

FIRST文法で Eのセットを決定する方法を知りたい:

誰かが私に指示を与えることができますか?

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

c++ - ブーストスピリットと前方宣言の問題

誰かが私に、現時点で正しいセマンティックアクションを実行できるようにするためにさらなる宣言を調べる必要がある状況に対処する方法についてのアドバイス/アイデアを教えてもらえますか?たとえば、誰かが「前方宣言」をサポートしていないプログラミング言語のインタプリタ/コンパイラを作成する場合によく知られています。例を見てみましょう:

少なくとも2つのパスが必要であることは明らかです。まず、すべての関数宣言を解析し、関数が取る引数の量、それらの型などの必要なすべての情報を取得します。次に、関数の呼び出しを処理し、上記のように問題を解決できます。このように進む場合は、いくつかのASTトラバースメカニズム/ビジターを使用してこれらすべてのパスを実行する必要があります。この場合、ASTのトラバース/アプライビジターに対処する必要があり、パーサーに直接統合されたフェニックス構造のすべての美しさに「さようなら」と言わなければなりません。

これにどのように対処しますか?

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

antlr - この文法はどうしたの?

問題は、defineルールがトークン、、と一致しdefineますが、ID一致しないことです。MissingTokenExceptionが発生しています。asTYPE

次のようにTYPEをインライン化すると、意図したとおりに機能します。


更新:fragment別の競合を解決するために、キーワードが追加されました:The following token definitions can never be matched because prior tokens match the same input: TYPE

0 投票する
6 に答える
2325 参照

regex - 101 と 110 を除外する正規表現

言語 {0,1} のすべてを受け入れるが、部分文字列 110 または 101 を含まない正規表現は何ですか?

承認:

  • 111111
  • 000011111
  • 100001000001001
  • 010
  • 1

拒絶:

  • 100110
  • 010100
  • 123

編集:以下の回答に関するコメントによると、この質問は正式な正規表現を求めています。