0

単語の中央または最後の英語のアルファベットを検索する方法。たとえば、CORPORATIONは単語であり、EdgeGramとプレフィックスフィルタを使用して、COR、CO、CなどのイニシャルでCORPORATIONを検索できます。しかし、POR、RATI、またはIONであるCORPORATIONの最後の文字または中間の文字で検索することはできません。Elastic Searchはこの機能をサポートしていますか?はいの場合、どうすればこの問題を解決できますか。

4

1 に答える 1

2

nGram トークナイザーは、あなたが望むことを行います。これは Edge-nGram トークナイザーに似ていますが、1 つのエッジに固定されるのではなく、単語全体を移動する点が異なります。

$ curl localhost:9200/test/_analyze?tokenizer=ngram&pretty' -d 'corporation' | grep token

"tokens" : [ {
"token" : "c",
"token" : "o",
"token" : "r",
"token" : "p",
"token" : "o",
"token" : "r",
"token" : "a",
"token" : "t",
"token" : "i",
"token" : "o",
"token" : "n",
"token" : "co",
"token" : "or",
"token" : "rp",
"token" : "po",
"token" : "or",
"token" : "ra",
"token" : "at",
"token" : "ti",
"token" : "io",
"token" : "on",
于 2013-02-07T09:53:17.303 に答える