Возврат всего поля из GetBestFragment в FastVectorHighlighter - PullRequest
1 голос
/ 11 мая 2010

В Highlighter.Net мы можем использовать NullFragmenter для возврата всего содержимого поля. Есть ли способ сделать это в FastVectorHighlighter.Net?

?

Ответы [ 3 ]

2 голосов
/ 03 июня 2015

Если вы используете SimpleFragListBuilder -fragmenter для FastVectorHighlighter , тогда необходимо изменить открытые статические свойства фрагментатора для управления размером фрагмента:

var fieldContent = "some data";

SimpleFragListBuilder.MARGIN = fieldContent.Length;
SimpleFragListBuilder.MIN_FRAG_CHAR_SIZE = SimpleFragListBuilder.MARGIN*3;

var result = highlighter.GetBestFragment(.., fragCharSize: SimpleFragListBuilder.MIN_FRAG_CHAR_SIZE);

(подробности см. В источнике - 'Lucene.Net 3.0.3 SimpleFragListBuilder.cs' [http://lucenenet.apache.org/docs/3.0.3/dd/d38/_simple_frag_list_builder_8cs_source.html])

0 голосов
/ 26 июля 2010

Существует патч для Java FVH, который утверждает, что делает это. Я лично не проверял это.

https://issues.apache.org/jira/browse/LUCENE-2464

0 голосов
/ 09 июля 2010

Разве это не вариант, просто использовать document.Get("field_name") и таким образом возвращать содержимое всего поля? В любом случае, вероятно, у вас есть документ где-то в контексте (так как вам нужен идентификатор документа для GetBestFragment()), так почему бы просто не использовать его?

...