NEST C#でElasticsearchを使用していますが、検索された単語または句が表示されるテキストの一部を取得できるかどうかは疑問でした。例えばNEST C#単語/句が表示される部分のテキストを取得
:私たちは、ドキュメントの分野で、このテキストを使用している場合:
「ウィリアム・シェイクスピアは英語の詩人、劇作家、俳優だった彼は、ストラトフォード・アポン・エイボンで1564年4月26日に生まれました。彼の父親は成功した地元のビジネスマンであり、彼の母親は土地所有者の娘であったシェイクスピアは、英国の偉大な作家と世界有数の劇作家として広く知られています。彼は約38の演劇、154のソネット、2つの長い物語の詩、いくつかの他の詩を書いたが、その中のいくつかの著者は不明である。彼の演劇はあらゆる主要な言語に翻訳され、他の劇作家。
そして、私は "バードオブアボン"を検索します。私の言葉やフレーズが表示されたフルテキストの部分と周囲の言葉を得る方法はありますか?ような何か: "...イギリスの国民詩人と呼ばれ、エイボンの吟遊詩人の愛称で呼ばれ、彼は約38演劇、154のソネットを書いた...。"
私は検索:
今var result = client.Search<Books>(b => b
.Size(100)
.Query(
query => query.Match(
s => s.
Field(p => p.ContainedText).Query("Bard of Avon"))));
、たとえば、最初の文書を保存すると、この文書が持つすべてのフィールドにアクセスできます。
var doc = res.Documents.First();
私は今すべてのテキスト(シェイクスピアの段落)を持つdoc.ContainedTextを持っています。 しかし、私は、単語が現れる場所の一部または一部を取得するためのオプションは表示されません。出来ますか?
多くの感謝!
Stack Overflowはコード作成サービスではありません。この問題を解決しようとしているコードを表示して、なぜ機能していないのかをお知らせください。 – Ben
@Césarハイライトを見てください:https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-highlighting.html –
@RussCamこれを読んだことがありますが、それは私が望むものではありません。私はGoogleと同じことをしたいだけです。フレーズを検索すると、単語やフレーズが表示される部分のテキストが表示されます。 –