2

私は 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 は、一部のアラビア文字を正規化するだけです。

4

0 に答える 0