Всем привет!
Вопрос от новичка
Я все продолжаю играться с тестовой базой и потом переношу что получилось на свою
Вопрос такой:
Я добавил "char_filter": "html_strip", в analysis, но текст в "properties" : {
"body" : { "type" : "string", "analyzer" : "russian_morphology" }, продолжает укладываться с тегами.
Я где-то запутался в синтаксисе?
#!/bin/sh
curl -XDELETE 'http://192.168.200.43:9200/rustest' && echo
curl -XPUT 'http://192.168.200.43:9200/rustest' -d '{
"settings": {
"analysis": {
"analyzer": {
"my_analyzer": {
"type": "custom",
"char_filter": "html_strip",
"tokenizer": "standard",
"filter": ["lowercase", "russian_morphology", "english_morphology", "my_stopwords"]
}
},
"filter": {
"my_stopwords": {
"type": "stop",
"stopwords": "а,без,более,бы,был,была,были,было,быть,в,вам,вас,весь,во,вот,все,всего,всех,вы,где,да,даже,для,до,его,ее,если,есть,еще,же,за,здесь,и,из,или,им,их,к,как,ко,когда,кто,ли,либо,мне,может,мы,на,надо,наш,не,него,нее,нет,ни,них,но,ну,о,об,однако,он,она,они,оно,от,очень,по,под,при,с,со,так,также,такой,там,те,тем,то,того,тоже,той,только,том,ты,у,уже,хотя,чего,чей,чем,что,чтобы,чье,чья,эта,эти,это,я,a,an,and,are,as,at,be,but,by,for,if,in,into,is,it,no,not,of,on,or,such,that,the,their,then,there,these,they,this,to,was,will,with"
}
}
}
}
}' && echo
curl -XPUT 'http://192.168.200.43:9200/rustest/type1/_mapping' -d '{
"type1": {
"_all" : {"analyzer" : "russian_morphology"},
"properties" : {
"body" : { "type" : "string", "analyzer" : "russian_morphology" },
"targetId" : { "type" : "string", "analyzer" : "russian_morphology" }
}
}
}'
Пробывал обойти это с помощью https://www.npmjs.com/package/striptags , но там теги удаляются бекспейсом и слова просто склеиваются если между тегами не было пробелов, укладываясь в эластик одним словом, будет ли у меня с данным фильтром эластика такая же проблема?
Например в документе у меня
Ford Henry
Vladimir Petrovich
А в базу попадает Ford HenryVladimir Petrovich т.к. разметку просто удалило бэкспейсом.