특수 문자를 공백으로 대체하고 대문자로 변환하는 분석기를 만들려고합니다. 그 다음엔 소문자로 검색하고 싶다면 제대로 작동해야합니다.elasticsearch 매핑 분석기 - 결과가 나타나지 않습니다.
매핑 분석기 : 그것은 공백과 특수 문자를 대체하여 제대로 말을 토큰 화되어
[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"
}'
. 이제 텍스트에서 단어를 검색하면 검색 결과가 표시되지 않습니다.
[email protected]:~/Downloads/elasticsearch-2.4.0/bin$ curl -XGET 'http://localhost:9200/aida/_search' -d '{
"query":{
"match":{
"text":"My"
}
}
}'
위의 GET 쿼리 결과가 표시되지 않습니다. 같은 결과 받기 :
[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":[]}}
아무도 도와 줄 수 있습니까? 고맙습니다!
색인을 생성했지만 색인을 생성 했습니까? '_analyze'에 대한 호출은 아무 것도 색인화하지 않고 단지 텍스트 분석 방법을 보여줍니다. 나는 당신의 [다른 질문]에서와 같은 문제라고 생각합니다. (http://stackoverflow.com/questions/39643533/custom-analyzer-which-breaks-the-tokens-on-special-characters-and-lowercase-uppe) – Val
그래, 그 같은 문제. 이 문제를 어떻게 해결할 수 있는지 말해 주 시겠어요 –