You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为Text类型字段配置html_strip过滤器后HTML标签未移除问题

问题原因及解决办法

你的配置其实已经生效了——用happy能查到结果,就说明html_strip字符过滤器已经在索引阶段把HTML标签从倒排索引里移除了。你看到_source里还保留HTML标签,核心原因是:

  • Elasticsearch的分析器(包括字符过滤器)只负责处理文本生成供查询用的倒排索引,不会修改原始存储的_source字段。_source存的是你写入时的原始数据,默认不会被分析器改动。

如果想要返回的内容也去掉HTML标签,可以用这几种方式:

  • 用高亮功能:查询时添加高亮配置,高亮结果会使用分析后的无标签文本。示例查询:
    {
      "query": {
        "match": {
          "description": "happy"
        }
      },
      "highlight": {
        "fields": {
          "description": {}
        }
      }
    }
    
  • 索引前手动预处理:把数据写入Elasticsearch之前,自己先去掉HTML标签。
  • 用Ingest Pipeline自动处理:创建一个管道,在索引阶段自动清洗title和description字段,去掉HTML标签后再存入。示例管道:
    {
      "processors": [
        {
          "html_strip": {
            "field": "title"
          }
        },
        {
          "html_strip": {
            "field": "description"
          }
        }
      ]
    }
    
    后续写入数据时指定这个管道即可。

内容的提问来源于stack exchange,提问作者Lina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 19:20:11