法语网站

时间:2016-02-04 08:24:41

标签: solr

使用Drupal 7.39和Solr 3.5(搜索Api模块)作为法语网站,关键字搜索工作正常,它会使用搜索的关键字返回所需的记录。

但是在使用多项同义词时,搜索不能正常工作。以下是synonyms_fr.txt文件的一些内容

  

负责任的资源Humaines,负责任的RH

     

顾问资源Humaines,顾问RH,Conseiller Ressources   Humaines,Conseiller RH

     

DirecteurdudéveloppementRH,Directeur du developpement des   Ressources Humaines,Directeur de lagestionprévisionnelledes   雇用和竞争对手

     

Directeur de programs,Directeur de projets Head of Retention,   保留经理

在搜索“Responsable RH”或“Responsable Resources Humaines”时,solr返回正确的数据。但是使用“DirecteurdudéveloppementRH”它返回说“X”数字或记录,但与它同义词价值“Directeur du developpement des Ressources Humaines”它返回0记录与“Directeur de lagestionprévisionnelledesemplois etdescompétences”它返回“ X-1“记录数量。

无法理解多学期synonmys无法正常工作的原因。

以下是法国网站的solr配置。

<fieldType name="text_fr" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
  <charFilter class="solr.MappingCharFilterFactory" mapping="mapping-ISOLatin1Accent.txt" />
  <tokenizer class="solr.WhitespaceTokenizerFactory" />
  <filter class="solr.StopFilterFactory" words="stopwords_fr.txt" format="snowball" ignoreCase="true" enablePositionIncrements="true" />
  <filter class="solr.LowerCaseFilterFactory" />
  <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" splitOnCaseChange="1" splitOnNumerics="1" catenateWords="1" catenateNumbers="1" catenateAll="0" protected="protwords.txt" preserveOriginal="1" />
  <filter class="solr.SynonymFilterFactory" synonyms="synonyms_fr.txt" ignoreCase="true" expand="true" />
  <filter class="solr.FrenchLightStemFilterFactory" />
  <filter class="solr.RemoveDuplicatesTokenFilterFactory" />
</analyzer>
<analyzer type="query">
  <charFilter class="solr.MappingCharFilterFactory" mapping="mapping-ISOLatin1Accent.txt" />
  <tokenizer class="solr.WhitespaceTokenizerFactory" />
  <filter class="solr.StopFilterFactory" words="stopwords_fr.txt" format="snowball" ignoreCase="true" enablePositionIncrements="true" />
  <filter class="solr.LowerCaseFilterFactory" />
  <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" splitOnCaseChange="1" splitOnNumerics="1" catenateWords="0" catenateNumbers="0" catenateAll="0" protected="protwords.txt" preserveOriginal="1" />
  <filter class="solr.FrenchLightStemFilterFactory" />
  <filter class="solr.RemoveDuplicatesTokenFilterFactory" />
</analyzer>

1 个答案:

答案 0 :(得分:0)

多项同义词很复杂,并且效果不佳。 我正在使用 https://github.com/healthonnet/hon-lucene-synonyms 而且它运作良好。

但是,如果您向我们提供您要搜索的不同单词的分析结果,您可以先调查您的配置。 当你说&#34;责任RH&#34;你的意思是短语查询还是强调文本中的例子?