2013-12-18 3 views
0

Когда Solr строит индекс, он получает части электронного адреса.Удалить адрес электронной почты от solr indexing

Например, если у меня есть электронное письмо: [email protected], Solr индексирует слова «foo» и «barcom».

Я хочу удалить эти слова, но я не знаю, как это сделать. Я пытался изменить файл конфигурации schema.xml добавив это правило на моем индексируемом поле:

<filter class="solr.PatternReplaceFilterFactory" pattern=" (.*)@(.*) " replacement=" " replace="all"/> 

Однако, это не работает.

ответ

0

Вы можете detect tokens as a e-mailaddress and blacklist them с помощью

<fieldType name="emails" class="solr.TextField" sortMissingLast="true" omitNorms="true"> 
    <analyzer> 
    <tokenizer class="solr.UAX29URLEmailTokenizerFactory"/> 
    <filter class="solr.TypeTokenFilterFactory" types="email_type.txt" useWhitelist="true"/> 
    </analyzer> 
</fieldType> 
Смежные вопросы