最近在项目中用 elasticsearch 做搜索,分词器用的是 ik,索引 html 内容时需要过滤标签,所以就想和内置的 html_strip 过滤器一起使用,但是这两个插件好像不能同时使用,也许是我的配置有问题。
PUT /foo
{
"index": {
"analysis": {
"analyzer": {
"ik": {
"alias": [
"ik_analyzer"
],
"type": "org.elasticsearch.index.analysis.IkAnalyzerProvider"
},
"ik_html_strip": {
"char_filter": [
"html_strip"
],
"type": "ik",
"use_smart": false
}
}
}
}
}
测试的结果中仍然会包含 html 标签
GET /foo/_analyze?format=text&text=the+%3Cb%3Equick%3C%2Fb%3E+br%C3%B6wn+%3Cimg+src%3D%22fox%22%2F%3E+%26quot%3Bjumped%26quot%3B&analyzer=ik_html_strip
求问,怎样才能在使用 ik 分析器之前先过滤 html 标签?