Textmarker Im Alltag, wenn wir Suchwerkzeuge verwenden, um Informationen abzufragen, sehen wir oft, dass die Felder im zurückgegebenen Ergebnisset, die unseren Abfragebedingungen entsprechen, mit speziellen Farben markiert sind, was die Ergebnishervorhebung darstellt. Indem hervorgehoben wird, wo Nutzer eindeutig Abfrageübereinstimmungen finden können,
ES verwendet Highlight, um ein oder mehrere Felder in den Suchergebnissen hervorzuheben.
Hervorhebungsparameter
| Parameter | illustrieren | | boundary_chars | Eine Zeichenkette, die jedes Randzeichen enthält. Standardmäßig ist ,! ?\\n. | | boundary_max_scan | Der Abstand zum Charakter der Scan-Grenze. Die Standardwertung ist 20. | | boundary_scanner | Geben Sie an, wie die markierten Fragmente aufgeteilt werden, was auf drei Arten verwendet werden kann: Zeichen, Satz oder Wort. | | boundary_scanner_locale | Lokalisierungseinstellungen zur Suche und Bestimmung von Wortgrenzen, dieser Parameter liegt in Form von Sprachtags ("en-US", "fr-FR", "ja-JP") vor. | | Encoder | Gibt an, dass der Ausschnitt HTML-kodiert sein sollte: standardmäßig (uncodiert) oder HTML (HTML – Escape-Ausschnitttext und dann Hervorhebung einfügen) | | Felder | Spezifiziert die Felder, die hervorgehoben werden sollen, um sie abzurufen. Felder können mithilfe von Wildcards angegeben werden. Zum Beispiel können Sie comment_* festlegen, um die Markierung aller Text- und Schlüsselwortfelder zu erhalten, die mit comment_ beginnen. | | force_source | Markiere entsprechend der Quelle. Der Standardwert ist falsch. | | Fragmenter | Spezifiziert, wie der Text im markierten Fragment aufgeteilt werden soll: Support the Parameters simple oder span. | | fragment_offset | Kontrolliere den Weißraum, den du mit dem Hervorheben beginnen möchtest. Funktioniert nur, wenn ich den FVH-Highlighter benutze. | | fragment_size | Die Größe des im Zeichen hervorgehobenen Segments. Der Standard ist 100. | | highlight_query | Markiere Übereinstimmungen für andere Anfragen als die Suchanfrage. Dies ist besonders nützlich bei der Verwendung von Rescoring-Abfragen, da diese Probleme standardmäßig nicht berücksichtigt werden. | | matched_fields | Kombinieren Sie mehrere Matching-Ergebnisse, um ein einzelnes Feld hervorzuheben, und für mehrere Felder, die unterschiedliche Methoden zur Analyse derselben Zeichenfolge verwenden. Alle matched_fields müssen term_vector auf with_positions_offsets gesetzt haben, aber nur das Feld, in das die Matches kombiniert werden, wird geladen, sodass nur das Setzen von Store auf ja diesem Feld zugutekommt. Nur für FVH Highlighter. | | no_match_size | Wenn kein passendes Fragment hervorgehoben werden kann, ist die Menge des Textes, die du vom Anfang des Feldes zurückgeben möchtest. Der Standard ist 0 (gibt nichts zurück). | | number_of_fragments | Die maximale Anzahl der zurückgegebenen Fragmente. Wenn die Anzahl der Fragmente auf 0 gesetzt ist, werden keine Fragmente zurückgegeben. Markiere stattdessen den gesamten Feldinhalt hervor und gib ihn zurück. Diese Konfiguration ist praktisch, wenn Sie kurze Texte wie einen Titel oder eine Adresse markieren müssen, aber keine Segmentierung benötigen. Wenn der number_of_fragments 0 ist, ignoriere den fragment_size. Standardmäßig sind es 5. | | Bestellung | Wenn sie auf Punktzahl gestellt sind, werden die hervorgehobenen Fragmente nach Punkten sortiert. Standardmäßig werden Fragmente in der Reihenfolge ausgegeben, in der sie im Feld erscheinen (Reihenfolge: keiner). Wenn du diese Option auf Punktzahl stellst, werden zuerst die relevantesten Clips ausgegeben. Jedes Highlight verwendet seine eigene Logik, um den Relevanzwert zu berechnen. | | phrase_limit | Kontrolliert die Anzahl der im Dokument berücksichtigten passenden Phrasen. Verhindert, dass FVH Highlighter zu viele Phrasen analysiert und zu viel Speicher verbraucht. Das Erhöhen des Limits erhöht die Abfragezeit und verbraucht mehr Speicher. Die Standardwertung ist 256. | | pre_tags | Wird mit post_tags verwendet, um HTML-Markup zu definieren, um Text hervorzuheben. Standardmäßig wird markierter Text eingewickelt und markiert. Spezifiziert als String-Array. | | post_tags | Wird mit pre_tags verwendet, um HTML-Markup zu definieren, um Text hervorzuheben. Standardmäßig wird markierter Text eingewickelt und markiert. Spezifiziert als String-Array. | | require_field_match | Standardmäßig werden nur Felder hervorgehoben, die Anfrageübereinstimmungen enthalten. Setze require_field_match auf falsch, um alle Felder hervorzuheben. Der Standardwert ist wahr. | | tags_schema | Auf Stil eingestellt mit dem integrierten Markup-Modus. | | Art | Verwendeter Highlight-Modus: Unified, Plain oder FVH. Der Standard ist einheitlich. |
Elasticsearch unterstützt drei Textmarker: unified, plain und fvh (Fast Vector Highlighter).Der Standard ist einheitlich。 Du kannst die Art des Markiermarkers für jedes Feld angeben.
(1) Einheitlicher Textmarker Unified Highlighter verwendet den Lucene Unified Highlighter. Dieser Textmarker zerlegt Text in Sätze und verwendet den BM25-Algorithmus, um einzelne Sätze so zu bewerten, als wären sie Dokumente einer Anthologie. Es unterstützt außerdem genaue Phrasen und mehrfaches (fuzzy, Präfix, Regex) Hervorheben. Das ist der Standard-Textmarker.
(2) Schlichter Textmarker Der schlichte Textmarker verwendet einen Standard-Lucene-Textmarker. Es versucht, die Wortbedeutung und etwaige Kriterien zur Wortpositionierung in Phrasenfragen zu verstehen, um die Theorie der Abfrageabstimmung widerzuspiegeln.
(3) FVH-Textmarker Der FVH-Textmarker verwendet den Lucene Fast Vector Textmarker. Dieser Markiermarker kann für Felder verwendet werden, in denen das term_vector auf der Karte auf with_positions_offsets gesetzt ist.
Betriebsmittel:
Der Hyperlink-Login ist sichtbar.
Der Hyperlink-Login ist sichtbar.
|