当type为keep_types时
,过滤器将只保留包含在预定义集合中的token。
| types | 要保留的类型列表 |
你可以这样设置:
PUT /keep_types_example
{
"settings" : {
"analysis" : {
"analyzer" : {
"my_analyzer" : {
"tokenizer" : "standard",
"filter" : ["standard", "lowercase", "extract_numbers"]
}
},
"filter" : {
"extract_numbers" : {
"type" : "keep_types",
"types" : [ "<NUM>" ]
}
}
}
}
}
并用下述文本进行测试:
POST /keep_types_example/_analyze
{
"analyzer" : "my_analyzer",
"text" : "this is just 1 a test"
}
返回结果:
{
"tokens": [
{
"token": "1",
"start_offset": 13,
"end_offset": 14,
"type": "<NUM>",
"position": 3
}
]
}
注意输出中只有<NUM>token(只有数字1,其他文本都被忽略了)
。