Windows Search 機能を使用して、ユーザーがサイトのページとドキュメントを検索できるようにする Web サイトがあります。ほとんどのユーザーはすでに Google スタイルの検索構文に慣れているので、できるだけ直感的に検索できるようにしたいと考えています。ただし、Windows Search を使用すると、2 つの問題が発生するようです。
述語を使用する
FREETEXT()
と、ユーザーは特定の Google スタイルの構文オプションを入力できます。たとえば、完全一致のフレーズを二重引用符で囲んだり、マイナス記号を使用して特定の単語を除外したりできます。これらは私が必要と考える機能です。ただし、FREETEXT()
述語は、結果で返されるために、すべての検索用語がページ/ドキュメントのどこかに現れることを要求しているようです。述語を使用する
CONTAINS()
と、ユーザーはブール演算子を使用して検索語を入力でき、その*
文字を使用してワイルドカード検索を実行できます。ただし、すべての検索語は、論理演算子のいずれかで結合するか、二重引用符で囲む必要があります。
私が望むのは、2つの組み合わせです。ユーザーは、二重引用符を使用して正確なフレーズを検索したり、マイナス記号を使用して単語を除外したりできる必要がありますが、引用符で囲まれていないものはすべてワイルドカード マッチングの対象にする必要があります (たとえば、civ を検索すると、civil または Civility という単語を含むドキュメントが返されます)。文明)。
これを実装するにはどうすればよいですか?