Поскольку вы используете KeywordTokenizerFactory
, токен не будет создан, а текст будет рассматриваться как один токен. При поиске вам придется искать по одному токену.
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
</analyzer>
In: "Please, email john.doe@foo.com by 03-09, re: m37-xq."
Out: "Please, email john.doe@foo.com by 03-09, re: m37-xq."
Если вы хотите сгенерировать токены, вы должны использовать StandardTokenizer
или WhitespaceTokenizer
в качестве токенизатора, а не KewordTokenizer.
StandardTokenizer
создает слова / токены в знаках препинания, удаляя знаки препинания.
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
</analyzer>
In: "Please, email john.doe@foo.com by 03-09, re: m37-xq."
Out: "Please", "email", "john.doe", "foo.com", "by", "03", "09", "re", "m37", "xq"
A WhitespaceTokenizer
является токенизатором который делит текст в пробелах.
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory" rule="java" />
</analyzer>
In: "To be, or what?"
Out: "To", "be,", "or", "what?"