2013-12-18 136 views
0

當Solr構建索引時,它會獲取部分電子郵件地址。從索引索引中刪除電子郵件地址

舉例來說,如果我有這樣的電子郵件:[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>