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

How to remove custom stem removing y from end of word?

是否有任何开箱即用的词干提取算法可以从词尾删除 y?如果不是,一般如何处理 funky = funk?

我会坚持使用 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