Использовал следующий код, но при поиске C ++ он не распознал символ ++.
Какие фильтры доступны для таких сопоставлений?
{
"onnet_taxonomy":{
"aliases":{
},
"mappings":{
"text":{
"properties":{
"Occupation":{
"type":"text",
"fields":{
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
},
"Skill":{
"type":"text",
"fields":{
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
},
"Skill Type":{
"type":"text",
"fields":{
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
}
}
},
"keywords":{
"properties":{
"Occupation":{
"type":"text",
"fields":{
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
},
"Skill":{
"type":"text",
"fields":{
"analyzed":{
"type":"text",
"analyzer":"analyzer_keyword",
"search_analyzer":"analyzer_shingle"
},
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
},
"Skill Type":{
"type":"text",
"fields":{
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
}
}
}
},
"settings":{
"index":{
"number_of_shards":"5",
"provided_name":"onnet_taxonomy",
"creation_date":"1583114276039",
"analysis":{
"filter":{
"my_shingle_filter":{
"max_shingle_size":"8",
"min_shingle_size":"2",
"output_unigrams":"true",
"type":"shingle"
}
},
"analyzer":{
"analyzer_keyword":{
"filter":[
"lowercase"
],
"char_filter":[
"code_mapping"
],
"type":"custom",
"tokenizer":"keyword"
},
"analyzer_shingle":{
"filter":[
"lowercase",
"my_shingle_filter"
],
"char_filter":[
"code_mapping"
],
"tokenizer":"standard"
}
},
"char_filter":{
"code_mapping":{
"type":"mapping",
"mappings":[
"++ => plusplus",
"c# => csharp",
"C# => csharp",
"F# => fsharp",
"f# => fsharp",
".net => dotnet",
".Net => dotnet",
".NET => dotnet",
"( => map_lp",
") => map_rp",
"& => and",
"# => hash",
"+ => plus"
]
}
}
},
"number_of_replicas":"1",
"uuid":"LNf2frW1S8WmHSOJWVrvLA",
"version":{
"created":"5030399"
}
}
}
}
}