Ищем TokenFilter - PullRequest
       9

Ищем TokenFilter

1 голос
/ 04 июня 2010

Я индексирую некоторые файлы, написанные на испанском языке в Solr, и иногда появляются символы типа «D» ....
Интересно, есть ли какой-нибудь TokenFilter, чтобы избежать этого символа, когда текст имеет акцент (á, é, í, ó ...) или буква -.

Спасибо

Ответы [ 2 ]

0 голосов
/ 30 января 2011

Если вам нужен латинский язык, более простое решение - использовать

solr.ASCIIFoldingFilterFactory

как в:

  <fieldType name="text" class="solr.TextField" omitNorms="false">
  <analyzer>
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory"/>
    <filter class="solr.SnowballPorterFilterFactory" language="Romanian" />
  </analyzer>
</fieldType>

см. http://wiki.apache.org/solr/LanguageAnalysis для более подробного использования.

0 голосов
/ 04 июня 2010

Я добавил его, где все остальные фильтры:

fieldType name = "textTight" класс = "solr.TextField"
positionIncrementGap = "100">
Анализатор>
tokenizer class = "solr.WhitespaceTokenizerFactory" />

    filter class="solr.SynonymFilterFactory"    

синонимы = "synonyms.txt" ignoreCase = "true" expand = "false" />
....! - Filtro para quitar acentos y ñññ ->
charFilter класс = "solr.MappingCharFilterFactory" отображение = "отображение-ISOLatin1Accent.txt" /> ....
/ Анализатор>
/ FieldType>

Конечно, после этого я перестраиваю свой индекс.

(я добавляю этот ответ, потому что в комментарии это было непонятно)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...