問題タブ [parsing]
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.
python - ConfigParser で使用される構成ファイルの DEFAULT セクションの使用目的は何ですか?
私は単純な構成のためにかなり長い間 ConfigParser を使用してきました。長い間私を悩ませてきたのは、DEFAULT セクションです。何が適切な使用法なのかよくわかりません。私はドキュメントを読みましたが、その使用方法のいくつかの巧妙な例と、それがファイル内の他のセクションにどのように影響するか (可能なことの種類を実際に示しているもの) を見たいと思っています。
parsing - 再帰下降構文解析-LL(1)から
次の単純な「電卓式」文法(BNF)は、予測LL(1)である簡単な再帰下降パーサーを使用して簡単に解析できます。
選択するルールを知るには、次のトークンを確認するだけで常に十分だからです。ただし、次のルールを追加するとします。
次のような変数を使用して、コマンドラインで電卓を操作するために:
<command>
単純なLL(1)予測パーサーを使用してルールを解析できないというのは本当ですか?そのためのパーサーを作成しようとしましたが、今後さらにトークンを知る必要があるようです。バックトラッキングを使用するソリューションですか、それともLL(2)を実装して、常に2つのトークンを先読みすることができますか?
RDパーサジェネレータがこの問題を処理する方法(たとえば、ANTLR)?
java - Perlを使用してJavaクラスへの参照を識別するにはどうすればよいですか?
私はPerlスクリプトを書いていますが、完全修飾されたJavaクラス名への参照を1行ずつチェックしてJavaソースファイルを解析する必要があります。私は自分が探しているクラスを前もって知っています。また、検索されているソースファイルの完全修飾名(パスに基づく)。
たとえば、com / bob / is/YourUncle.javaファイル内のfoo.bar.Bazへのすべての有効な参照を見つけます。
現時点で、説明する必要があると私が考えることができるケースは次のとおりです。
解析されるファイルは、検索クラスと同じパッケージに含まれています。
foo / bar/Boing.javaでfoo.bar.Baz参照を見つけます
コメントは無視する必要があります。
/li>インラインの完全修飾参照。
/li>importステートメントに基づく参照。
/li>
Perl 5.8でこれを行う最も効率的な方法は何でしょうか?いくつかの派手な正規表現はおそらく?
language-agnostic - Google 検索スタイルに「もしかして:」を与える StringToken パーサー
次の方法を探しています。
String 内の空白で区切られたトークンを取得します。提案された単語を返す
つまり、
Google 検索は"fonetic wrd nterpreterr"を取得でき
、結果ページの上部に"もしかして: phonetic word interpreter"と表示されます。
C* 言語または Java でのソリューションが望ましいでしょう。
そのような機能を実行する既存のオープン ライブラリはありますか?
または、Google API を利用して提案された単語を要求する方法はありますか?
email - HTMLまたはさまざまな奇妙なエンコーディングである可能性のある生の電子メールメッセージを解析し、それをプレーンテキストに変換します。たとえば、マツが表示する方法です
これを行う理由は、ボットに電子メールで送信された指示を簡単に解析できるようにするためです。これは、majordomo がサブスクライブやサブスクライブ解除などのコマンドを解析するために行うようなものです。引用されたテキスト、ヘッダーと本文の区別など、多くのクレイジーなフォーマットと処理するものがあることがわかりました.
これを行うための perl モジュールが理想的ですが、任意の言語でのソリューションを歓迎します。
c# - ネットワーク経由で大きなテキスト ファイルを読み取って解析する最良の方法は何ですか?
リモート マシンからいくつかのログ ファイルを解析する必要があるという問題があります。いくつかの複雑な問題があります: 1) ファイルが使用中の可能性がある 2) ファイルが非常に大きい (100 MB 以上) 可能性がある 3) 各エントリが複数行である可能性がある
使用中の問題を解決するには、まずコピーする必要があります。現在、リモート マシンからローカル マシンに直接コピーし、そこで解析しています。これが問題 2 につながります。ファイルが非常に大きいため、ローカルにコピーするにはかなりの時間がかかります。
解析時間を短縮するために、パーサーをマルチスレッド化したいと考えていますが、これにより、複数行のエントリの処理が少し難しくなります。
2つの主な問題は次のとおりです。1)ファイル転送を高速化するにはどうすればよいですか(圧縮?、ローカルでの転送は必要ですか?、使用中のファイルを別の方法で読み取ることはできますか?)2)複数行のエントリを処理するにはどうすればよいですか?スレッド間で行を分割するときは?
更新: サーバーで明らかな解析を行わなかった理由は、CPU への影響をできるだけ少なくしたいからです。システムの im テストのパフォーマンスに影響を与えたくありません。
php - PHP parse_ini_file() - どこに見えますか?
php を呼び出すとparse_ini_file("foo.ini")
、どのパスで foo.ini が検索されますか? インクルードパス?関数のドキュメントはそれについて言及していません。
javascript - JavaScriptでユーザー入力から時間を解析してDateオブジェクトにする方法は?
ユーザーがテキスト入力に時刻を入力するためのフォームウィジェットに取り組んでいます(カレンダーアプリケーション用)。JavaScript (私たちは jQuery FWIW を使用しています) を使用して、ユーザーが JavaScriptDate()
オブジェクトに入力したテキストを解析する最良の方法を見つけて、比較やその他のことを簡単に実行できるようにしたいと考えています。
私はその方法を試しましたparse()
が、私のニーズには少しうるさいです。Date()
次の例の入力時間 (論理的に類似した他の時間形式に加えて) を同じオブジェクトとして正常に解析できると期待しています。
- 午後1:00
- 午後1:00
- 午後1時
- 午後1:00
- 午後1:00。
- 午後1時
- 午後1時
- 午後1時
- 1p
- 午後1時
- 午後1時。
- 1p
- 13:00
- 13
正規表現を使用して入力を分割し、オブジェクトの作成に使用する情報を抽出することを考えていDate()
ます。これを行う最善の方法は何ですか?
java - Java で 2 つの XML ドキュメントを比較する最良の方法
基本的にカスタム メッセージ形式を XML メッセージに変換し、それを相手に送信するアプリケーションの自動テストを作成しようとしています。入力メッセージと出力メッセージの適切なペアが揃っているので、入力メッセージを送信して、XML メッセージが送信されるのをリッスンするだけで済みます。
実際の出力を期待される出力と比較するときが来ると、いくつかの問題が発生します。私が最初に考えたのは、予想されるメッセージと実際のメッセージの文字列を比較することだけでした。サンプル データは常に一貫してフォーマットされているとは限らず、XML 名前空間に異なるエイリアスが使用されることがよくあります (名前空間がまったく使用されない場合もあります)。
両方の文字列を解析し、各要素を調べて自分で比較できることはわかっていますが、これはそれほど難しくありませんが、もっと良い方法や活用できるライブラリがあると感じています。
要するに、問題は次のとおりです。
どちらも有効な XML を含む 2 つの Java String が与えられた場合、それらが意味的に同等であるかどうかをどのように判断しますか? 違いが何であるかを判断する方法があれば、ボーナスポイント。