私は監視ソフトウェアを使用して、多くの Web ソースと数式に基づいて特定のトピックに関する記事を見つけています。方程式は次のようになります。
(K1 AND K2) OR K3 NOT "K4" OR "K5 K6"~5
上記の例は、ほぼすべての可能な演算子を示しています。~ は近接演算子であり、2 つの単語が検出され、最大で n 個の単語で区切られている場合に一致を要求します。
より正確な例を挙げると (? は 1 文字のワイルドカードです。* は任意の文字数です)。
("Game of Thrones" OR "George R. R. Martin") AND (Targaryen? OR Baratheon? NOT Lannister? OR "mother dragon?"~5)
私がやりたいのは、すべての括弧を書かなくても、キーワードを取り、方程式を形成するスクリプトまたはプログラムを提供することです。これにより、2 つの方程式の比較が容易になり、エラー率が低下すると思います。
最初に、デフォルトの「OR」演算子を使用した Excel ワークシートを考えました。
keyword | logical operator | depth of parentheses
しかし、それはすべての組み合わせでうまくいくわけではありませんでした -- プログラムは、実際には -1 +1 であるのに、2 つの線の間の深さが一定であることを推測できません。
おそらく平均的なユーザーに送信するので、できるだけ簡単な入力をお願いします。何か考えはありますか?その後、C++、Java、または VBA でインタープリターを実行できます。
編集/明確にするために、エンドユーザーが括弧を記述せず、キーワードとそれらの間の関係のみを気にできる入力形式を探しています。