solr / lucene查询突出显示阿拉伯语

时间:2013-06-19 08:27:37

标签: solr lucene arabic

我正在使用Solr 4.1,我想突出显示阿拉伯语查询。但它无法正常工作。它找到要正确突出显示的单词,但是当它想要添加突出显示标记(例如 )时,它无法找到要将这些标记添加到的写入索引。例如,它为查询披萨创建了这样的东西。

<str>i eat<em> pizz</em>a every weekend</str> 

它适用于英语,但我只是想解释一下我的意思。

或者这是查询علی的阿拉伯语示例:

<str>أَخْبَرَنِي الرَّئِیسُ الْعَفِیفُ أَبُو الْبَقَاءِ  هِبَةُ اللَّه‌ِ بْنُ نَمَا بْن<em>ِ عَلِي</em>ِّ بْ</str>

我希望如此:

<str>أَخْبَرَنِي الرَّئِیسُ الْعَفِیفُ أَبُو الْبَقَاءِ  هِبَةُ اللَّه‌ِ بْنُ نَمَا بْنِ <em>عَلِيِّ</em> بْ</str>

请注意,我使用以下字段说明:

<fieldType name="text_ar" class="solr.TextField" positionIncrementGap="100">
  <analyzer> 
    <charFilter class="searchEng.solr.ar.CharFilter" />
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <!-- for any non-arabic -->
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="lang/stopwords_ar.txt" enablePositionIncrements="true"/>
    <!-- normalizes ﻯ to ﻱ, etc -->
    <filter class="solr.ArabicNormalizationFilterFactory"/>
    <filter class="solr.ArabicStemFilterFactory"/>
  </analyzer>
</fieldType>

第一个charFilter只是标准化了一些阿拉伯字符。

0 个答案:

没有答案