• 自定义分词器-ik analyzer+html_strip


    由于工作中的业务需要,需要定义这么一个分词器,用于对一个名为remark的字段进行分词。

    其中,remark字段适用于存储富文本类型的信息, 比如 <p>这是一个<b>接口</b>啊</p>

    如果直接使用ik_max_word对字段进行分词,那么得到的分词结果如下图所示:

     如上图,可以看到,富文本中的html标签<p>  </p> 等,都被解析成一个token了,显然这不是我们想要的结果。

    下面我们自定义一个名为my_custom_html_ik_analyzer,它基于ik_max_word创建,在ik_max_word的基础上,添加了html_strip的character filter,添加这个character filter,主要用于在分词前,先过滤掉字段中的html标签

    测试:

    PUT susu_test1
    {
      "settings": {
          "analysis": {
            "analyzer": {
              "my_custom_html_ik_analyzer": {
                "char_filter": [
                  "html_strip"
                ],
                "tokenizer": "ik_max_word"
              }
            }
          }
      }
    }

    如下图:

    接着测试我们自定义个分词器,如下图

    可以看到,诸如<p>  </p>  <b>  </b>等html标签,都已经被过滤掉了

  • 相关阅读:
    mahout下的KMeans Clustering实现
    信号量、互斥体和自旋锁
    找出二叉树中两个节点的最低共同父节点
    C/C++中volatile关键字
    函数指针和指针函数
    java终止线程的通用机制
    我的一次重构实践
    新手浅谈Future
    线程中添加线程
    死锁
  • 原文地址:https://www.cnblogs.com/suhaha/p/15211108.html
Copyright © 2020-2023  润新知