J'essaie de créer un analyseur qui remplace un caractère spécial par un espace blanc et le convertit en majuscules. puis après, si je veux chercher en minuscules aussi, cela devrait marcher.Analyseur de mappage elasticsearch - Obtenir un résultat sans résultat
Analyzer Mapping:
[email protected]:~/Downloads/elasticsearch-2.4.0/bin$ curl -XPUT 'http://localhost:9200/aida' -d '{
"settings": {
"analysis": {
"analyzer": {
"my_analyzer": {
"tokenizer": "standard",
"char_filter": [
"my_char_filter"
],
"filter": [
"uppercase"
]
}
},
"char_filter": {
"my_char_filter": {
"type": "pattern_replace",
"pattern": "(\\d+)-(?=\\d)",
"replacement": "$1 "
}
}
}
}
}
'
{"acknowledged":true}
[email protected]:~/Downloads/elasticsearch-2.4.0/bin$ curl -XPOST 'http://localhost:9200/aida/_analyze?pretty' -d '{
"analyzer":"my_analyzer",
"text":"My name is Soun*arya?jwnne&yuuk"
}'
Il est tokenizing les mots correctement en remplaçant le caractère spécial avec les espaces. Maintenant, si je recherche un mot dans le texte, il ne me récupère aucun résultat.
[email protected]:~/Downloads/elasticsearch-2.4.0/bin$ curl -XGET 'http://localhost:9200/aida/_search' -d '{
"query":{
"match":{
"text":"My"
}
}
}'
Je n'obtiens aucun résultat de la requête GET ci-dessus. Obtenir le résultat comme:
[email protected]:~/Downloads/elasticsearch-2.4.0/bin$ curl -XGET 'http://localhost:9200/aida/_search' -d '{
"query":{
"match":{
"text":"my"
}
}
}'
{"took":5,"timed_out":false,"_shards":{"total":5,"successful":5,"failed":0},"hits":{"total":0,"max_score":null,"hits":[]}}
Quelqu'un peut-il m'aider avec ceci! Je vous remercie!
Question muette, mais avez-vous indexé des données après la création de votre index? L'appel à '_analyze' n'indexera rien, mais montrera simplement comment le texte sera analysé. Je pense que c'est le même problème que dans votre [autre question] (http://stackoverflow.com/questions/39643533/custom-analyzer-which-breaks-the-tokens-on-special-characters-and-lowercase-uppe) – Val
oui, c'est le même problème. pourriez-vous s'il vous plaît dites-moi comment je pourrais résoudre ce problème –