2017-07-04 22 views
1

有一个俄语单词“比萨” =“пицца”,他们都非常相似,因为:如何将Slugify添加到ElasticSearch?

"p" equals to "п" 
"i" equals to "и" 
"z" equals to "ц" 
"z" equals to "ц" 
"a" equals to "а" 

所以,当我在寻找“пицца”我必须让所有的结果与“比萨”作为结果。

我该如何做到这一点?

回答

1

的问题解决了,它解决的方式不是我所期待的,但是,它仍然只是工作,这里是解决方案:

"settings": { 
    "analysis": { 
     "filter": { 
      "ru_synonym": { 
       "type": "synonym", 
       "synonyms": [ 
        "pizza, пицца" 
       ] 
      } 
     }, 
     "analyzer": { 
      "ru_analyzer": { 
       "type": "custom", 
       "tokenizer": "whitespace", 
       "filter": [ 
        "lowercase", 
        "ru_synonym" 
       ] 
      } 
     } 
    } 
} 
+0

与解决方案的问题是,虽然你需要明确添加每个同义词。如果你只有一对,但是如果有很多... –

+0

在这种情况下,这可能会有所帮助 - https://www.elastic.co/guide/en/elasticsearch/plugins/5.4/analysis-icu -transform.html – Madi7

相关问题