Solr 索引CJK和strip HTML标记
我正在使用eZ Find,eZ Publish to solr的前端,对一些包含日语文本和html标记的字段进行索引 我在schema.xml中修改了文本分析器,如下所示:Solr 索引CJK和strip HTML标记,solr,ezpublish,Solr,Ezpublish,我正在使用eZ Find,eZ Publish to solr的前端,对一些包含日语文本和html标记的字段进行索引 我在schema.xml中修改了文本分析器,如下所示: <fieldType name="text" class="solr.TextField"> <analyzer> <charFilter class="solr.HTMLStripCharFilterFactory"/> <tokenizer
<fieldType name="text" class="solr.TextField">
<analyzer>
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="solr.CJKTokenizerFactory"/>
</analyzer>
</fieldType>
如何防止HTML标记被索引
提前感谢。通过使用,您只能阻止HTML标记被“索引”,而不能阻止HTML标记被“存储”
换句话说,您将获得的结果すもももももももものうち"代码>(当然带有HTML标记),但不适用于“すもももももももものうち “
注意:假设您在搜索过程中不会去掉html标记
如果不希望这些HTML标记被索引,可以使用
您的配置可能如下所示:
<analyzer>
<charFilter class="solr.PatternReplaceCharFilterFactory"
pattern="Your regular expression to match HTML tags"
replacement=""/>
<tokenizer class="solr.CJKTokenizerFactory"/>
</analyzer>
谢谢!事实上,存储字符串和索引字符串是不同的。因为我只关心索引字符串,所以我的当前设置很好,但正则表达式的技巧很好。
<str name="attr_free_1_t"><h1>ほげほげ<h1><p>すもももももももものうち</p></str>
<analyzer>
<charFilter class="solr.PatternReplaceCharFilterFactory"
pattern="Your regular expression to match HTML tags"
replacement=""/>
<tokenizer class="solr.CJKTokenizerFactory"/>
</analyzer>