Когда я использую Luke для поиска в моем индексе Lucene с помощью стандартного анализатора, я вижу поле, которое я ищу, содержит значения в форме MY_VALUE.
Однако когда я ищу поле: «MY_VALUE», запрос анализируется как поле: «мое значение»
Есть ли простой способ экранировать символ подчеркивания (_), чтобы он его искал?
EDIT:
04.01.2010 11:08 PST
Я думаю, что есть ошибка в токенизаторе для Lucene 2.9.1, и она, вероятно, была там раньше.
Загрузите Люка и попробуйте найти «BB_HHH_FFFF5_SSSS», когда есть число, возвращаются следующие токены:
"bb hhh_ffff5_ssss"
После некоторого тестирования я обнаружил, что это из-за числа. Если я введу
"BB_HHH_FFFF_SSSS", я получаю
"bb hhh ffff ssss"
На данный момент я склоняюсь к ошибке токенизатора, если только наличие числа не должно иметь такого поведения, но я не понимаю, почему.
Кто-нибудь может это подтвердить?