Solr:使用HTMLStripCharFilterFactory作为索引字段,仍然可以搜索html标记

时间:2014-05-19 06:34:00

标签: solr

我使用了HTMLStripCharFilterFactory来过滤索引中的html标签,下面是我的字段类型

<fieldType name="text_en_html" class="solr.TextField" omitNorms="true" positionIncrementGap="100" >
    <analyzer type="index">
        <charFilter class="solr.HTMLStripCharFilterFactory"/>
        <tokenizer class="solr.StandardTokenizerFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.StandardTokenizerFactory"/>
    </analyzer>
    </fieldType>

我已经从solr 4.2管理界面添加了以下json文档

{"Id":"3242555","PostData":"Hello World <td width=100 nowrap align='right'> "}

根据这个https://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.HTMLStripCharFilterFactory,索引中应该只有Hello world,但即使我搜索&#34; width&#34;,它也会显示结果。

此外,如果我搜索PostData:width或fq = PostData:width,则表示没有结果,但如果我搜索q = width,则显示上面插入的文档。

那么如何阻止搜索这些标签?

0 个答案:

没有答案