如何从单词结尾删除自定义词干删除y?

时间:2017-03-27 19:11:52

标签: elasticsearch elasticsearch-5

是否有任何开箱即用的词干算法可以从单词的末尾删除y?如果不是如何通常处理funky = funk?

1 个答案:

答案 0 :(得分:1)

我坚持lovins英语stem filter。您可以通过以下设置设置映射:

curl -XPUT http://localhost:9200/my_test_01 -d '
{
  "settings": {
    "analysis": {
      "analyzer" : {
        "my_analyzer" : {
          "tokenizer" : "standard",
          "filter" : ["standard", "lowercase", "my_stemmer"]
        }
      },
      "filter" : {
        "my_stemmer" : {
          "type" : "stemmer",
          "name" : "lovins"
        }
      }
    }
  },
  "mappings": {
    "stem": {
      "properties": {
        "name": {
          "type": "text",
          "analyzer": "my_analyzer"
        }
      }
    }
  }
}'

我已经对它进行了测试,并且它做得很好:

  • funky - > funk
  • funny - > fun
  • generally - > general
  • prohibitively - > prohibit
  • singlehandedly - > singlehanded
  • nifty - > nift