Извлечение терминов из запроса для выделения - PullRequest
1 голос
/ 21 декабря 2010

Я извлекаю термины из запроса, вызывающего ExtractTerms() объекта Query, который я получаю в результате QueryParser.Parse(). Я получаю HashTable, но каждый элемент представлен как:

Key - term:term
Value - term:term
  1. Почему ключ и значение совпадают? И еще, почему значение термина дублируется и разделяется двоеточием?
  2. Подсветки только вставляют теги или делают что-то еще? Я хочу не только получить фрагменты текста, но и выделить исходный текст (он достаточно большой). Я пытаюсь получить термины и по смещению вставлять теги вручную. Но я волнуюсь, если это правильное решение.

Ответы [ 2 ]

1 голос
/ 21 декабря 2010

Я думаю, что ответ на этот вопрос может помочь.

0 голосов
/ 22 декабря 2010
  1. Это потому, что .Net 2.0 не имеет эквивалента HashSet Java.Преобразование в .Net использует Hashtables с тем же значением в ключе / значении.Двоеточие, которое вы видите, является просто результатом Term.ToString(), Term - это имя поля + текст термина, имя вашего поля, вероятно, «term».документ, используя вкладку Highlighter, используйте NullFragmenter

...