【问题标题】:Azure search - keyword analyzerAzure 搜索 - 关键字分析器
【发布时间】:2018-03-22 00:44:07
【问题描述】:

我有以下字段的文档:

a_number_collection = { "AA BB", "DD FF" }
b_number_collection = { "AG BB", "AA F1" }
description = "sample super product"

我想要实现的是仅当用户输入整数时才匹配文档。问题是用户只有单一的搜索查询输入,并且可以输入例如“超级 AA BB 产品”。我考虑过关键字分析器,但问题是我不知道用户在搜索查询中的哪个位置输入了数字,所以我不能像“超级\”AA BB\“产品”一样搜索。即使使用 searchMode “all”,如果没有关键字,我也会得到“super AA AG product”等搜索查询的结果

感谢您的任何建议!

【问题讨论】:

    标签: azure-cognitive-search


    【解决方案1】:

    “数字”是否有任何特定模式?请查看检测和替换文本模式的自定义分析组件。 PatternReplaceCharFilter 使用正则表达式模式([A-Z0-9]{2})\s([A-Z0-9]{2}) 和替换="$1_$2"。给定一个输入字符串"hello AA BB world",tokenfilter 将分析它的token 序列<hello> <AA_BB> <world> 并且搜索将返回匹配整个“数字”的文档(例如AA_BB)。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多