問題タブ [nearley]
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.
regex - 文法 - 単語の前後の任意および必須の空白を一致させる方法は?
私はNearley と mooを使用して、かなり複雑な文法を作成しています。私の空白の要件を除いて、うまく機能しているようです。文法を明確に保ちながら、必要な場合は空白を要求し、そうでない場合は許可する必要があります。
例えば:
単語の間に空白を必要とする必要がありますが、カンマの周りは許可します。したがって、以下も有効です。
以下は、これを行うための簡単な Nearley 文法です。構文がわからない場合でも、簡単に理解できます。
文法に問題があるかもしれませんが、考え方は同じです。これはあいまいな文法になります。オプションおよび必須の空白を想定して、明確な文法を定義するにはどうすればよいですか?
nearley - nearleyで可能な空白値にキャリッジリターンを追加するにはどうすればよいですか?
Nearleyを使用していますが、一部の CRLF ファイルで実行すると失敗します。現在、空白の組み込みインポートにコメントを付け、代わりに次のように \r でやり直すことで解決しました。
ビルトインファイルからベースにするようなことができるのは素晴らしいことwschar -> [ \t\n\r\v\f] {% id %}
ですが、そうすると無限ループが作成されます。
ありがとう、助けていただければ幸いです。
parsing - moo結果のデータ構造でnearleyを理解する
私はこの文法を持っています:
次の入力をニアリーにフィードすると、次の//\n//\n//\n//\n//
結果が得られます。
結果の配列が非常に深くネストされている理由と、要素ごとにフラットにする方法があるかどうかはよくわかりません。同じセマンティック レベルの同様のコメントは、1 つの配列の一部であり、入れ子にしないでください。