私はfull-text-indexes
neo4jグラフデータベースを検索するために使用していました。ただし、ユーザーが間違ったスペルを入力した場合、またはクエリがどの結果とも一致しない場合。did you mean
そのような場合にこれまたは一種の機能を処理する方法はありますか?
また、ユーザーが検索しているクエリに基づいて、検索をよりスマートにするにはどうすればよいでしょうか。SearchKickに出くわしましたが、これはneographyと統合されていません。
luceneクエリにあいまいさを導入できます。クエリに「〜」記号を追加して係数を指定することでこれを行うことができます。たとえばname:mistqke~0.8
、「間違い」というテキストがまだ見つかるはずです。あいまいさの係数は0〜1です。1に近い値は、より高い類似性と一致します。
ワイルドカードとファジークエリを組み合わせる場合は、次のようなものを使用できます。
START n=node:index('name:mistqke~0.8 or name:*mistqke*')
RETURN DISTINCT n;
luceneクエリの「OR」とRETURN句の「DISTINCT」に注意してください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加