I have next model for elastic:
{
"dev-dzep": {
"aliases": {},
"mappings": {
"usersearchmodel": {
"properties": {
"firstName": {
"type": "string",
"analyzer": "lowerKeyword"
}
}
}
},
"settings": {
"index": {
"creation_date": "1498805992106",
"analysis": {
"analyzer": {
"standard": {
"filter": [
"standard",
"lowercase",
"stop"
],
"char_filter": [
"icu_normalizer"
],
"type": "custom",
"tokenizer": "standard"
},
"lowerKeyword": {
"filter": [
"lowercase",
"icu_normalizer"
],
"char_filter": [
"icu_normalizer"
],
"type": "custom",
"tokenizer": "keyword"
}
}
},
"number_of_shards": "5",
"number_of_replicas": "1",
"uuid": "iglps8zkRa2Q11JHgyAXeg",
"version": {
"created": "2040199"
}
}
},
"warmers": {}
}
}
Next query doesn't work in such case:
POST /dev-dzep/_search
{
"from": 0,
"size": 15,
"track_scores": true,
"sort": [
{
"id": {
"order": "asc"
}
}
],
"query": {
"bool": {
"must": [
{
"bool": {
"should": [
{
"wildcard": {
"firstName": {
"value": "*lizéé"
}
}
}
]
}
}
]
}
}
}
But exact match query gives correct result:
POST /dev-dzep/_search
{
"query": {
"match" : {
"firstName" : "Elizéé"
}
}
}