問題タブ [petitparser]

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

parsing - petitparser を使用して JSON フォーマッタを作成するには?

私の知る限り、PetitParserは、テキストを解析するためのグラマーとアクションを定義できるパーサーです。

組み込みの JSON パーサーを使用して JSON 文字列を解析することに成功しましたが、さらに多くのことを行いたいと考えています。JSONをきれいな印刷スタイルにフォーマットできるJSONフォーマッターを書きたいです。

しかし、私は何をすべきかわかりません。いくつかのノードを作成し、解析された JSON のツリーを構築する必要がありますか? そして、それを行う方法は?

いくつかのサンプルを探していますが、まだ見つかりません。

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

parsing - PetitParserで、一部の文字を消費するがキャプチャしない方法は?

私はルールを定義しました:

「@who」の場合は、一致し@whoて結果として取得されます。

whoなしで返すだけで尋ねる方法は@

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

whitespace - PetitParser で、行区切りではなく空白であるパー​​サーを作成する方法は?

PetitParserDartには組み込みのwhitespace()パーサーがあり、次の文字をチェックします。

今、パーサーであるカスタム空白パーサーが必要ですが、whitespace()行セパレーターは受け入れません\n

それを行う方法、私は内部のコードをコピーして変更したくありませんwhitespace()。これを行うより良い方法はありますか?

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

dart - PetitParserDart の正規表現で `\b` を一致させる方法は?

\b正規表現の「世界の境界」ですが、PetitParserDart でどのように一致させるのですか?

私は試した:

でもなんか似合わない。上記のパターンは\b\w+\b正規表現です。


私の本当の問題は次のとおりです。

the をトークンとして扱いたいrenderのは、それがスタンドアロンの単語である場合のみです。

以下は真です。

以下はそうではありません:

string("render").trim()周りのスペースを食い尽くすので、ここでは使用できません。が欲しいのです\bが、PetitParserDart ではサポートされていないようです。

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

dart - PetitParserDart で左または右だけをトリミングする方法

trim()両側の文字列をトリミングするパーサーを作成する方法があります。

左または右をトリムするだけのものを作成する方法は?

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

dart - Dart コードの @override

PetitParserDart@overrideのコードにたくさんあることに気付きましたが、それらをどのようにチェックするのかわかりませんか?

IDEA dart-plugin for を試してみまし@overrideたが、まったく効果がありません。@overrideDart でどのように使用できますか?

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

parsing - PetitParserDart で、ルールが完全に一致しない場合に失敗して例外をスローする方法は?

PetitParserDartでいくつかのルールを定義しました:

したがって、次のテキストが一致します。

ただし、一致できない行がある場合:

文法を定義して失敗させ、オンライン(cccccccccではなくオンラインで例外をスローさせるにはどうすればよいbbbbbですか?

つまり、ルールが完全に一致しない場合にのみ例外をスローします。何も一致しない場合、例外はスローされません。

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

dart - petitparser 用の数学パーサーはありますか?

などの数学文字列を解析できるダーツ ライブラリはあり(3+4)/4.5ますか? 私は petitparser で基本的なパーサーを構築しようとしましたが、頭がいっぱいで、今は試行錯誤しています :) どこかに単純な数学パーサーの petitparser (Dart または他の言語) 実装はありますか?