Snowball token filter
The snowball
token filter is a stemming filter based on the Snowball algorithm. It supports many languages and is more efficient and accurate than the Porter stemming algorithm.
Parameters
The snowball
token filter can be configured with a language
parameter that accepts the following values:
Arabic
Armenian
Basque
Catalan
Danish
Dutch
English
(default)Estonian
Finnish
French
German
German2
Hungarian
Italian
Irish
Kp
Lithuanian
Lovins
Norwegian
Porter
Portuguese
Romanian
Russian
Spanish
Swedish
Turkish
Example
The following example request creates a new index named my-snowball-index
and configures an analyzer with a snowball
filter:
PUT /my-snowball-index
{
"settings": {
"analysis": {
"filter": {
"my_snowball_filter": {
"type": "snowball",
"language": "English"
}
},
"analyzer": {
"my_snowball_analyzer": {
"type": "custom",
"tokenizer": "standard",
"filter": [
"lowercase",
"my_snowball_filter"
]
}
}
}
}
}
copy
Generated tokens
Use the following request to examine the tokens generated using the analyzer:
GET /my-snowball-index/_analyze
{
"analyzer": "my_snowball_analyzer",
"text": "running runners"
}
copy
The response contains the generated tokens:
{
"tokens": [
{
"token": "run",
"start_offset": 0,
"end_offset": 7,
"type": "<ALPHANUM>",
"position": 0
},
{
"token": "runner",
"start_offset": 8,
"end_offset": 15,
"type": "<ALPHANUM>",
"position": 1
}
]
}
当前内容版权归 OpenSearch 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 OpenSearch .