分享好友 最新资讯首页 最新资讯分类 切换频道
“完整”Lucene 搜索语法(高级查询)的示例
2024-11-06 06:53

在构造 Azure AI 搜索的查询时,可以将默认的简单查询分析程序替换为功能更强大的 Lucene 查询分析程序,以便构建专用的高级查询表达式。

“完整”Lucene 搜索语法(高级查询)的示例

Lucene 分析程序支持复杂的查询格式,比如字段范围查询、模糊搜索、中缀和后缀通配符搜索、邻近搜索、术语提升以及正则表达式搜索。 额外的功能需遵守更多处理要求,因此执行时间应该会更长一些。 在本文中,你可以逐步了解一些示例,这些示例演示了基于完整语法的查询操作。

以下查询基于 hotels-sample-index,你可以按照此快速入门中的说明进行创建。

示例查询使用 REST API 和 POST 请求来表达。 可以在 REST 客户端中粘贴并运行它们。 或者,在 Azure 门户中使用搜索资源管理器的 JSON 视图。 在 JSON 视图中,可以粘贴本文中所示的查询示例。

请求头必须具有以下值:

密钥 值 Content-Type application/json api-key ,查询或管理密钥

URI 参数必须包括具有索引名、文档集合、搜索命令和 API 版本的搜索服务终结点,类似于以下示例:

请求正文的格式应为有效的 JSON:

  • 设置为“*”时,表示一个未指定的查询,等效于 NULL 或空搜索。 它不是特别有用,但却是你可以执行的最简单的搜索,并且会显示索引中所有可检索的字段以及所有值。

  • 设置为“完整”时,会调用完整的 Lucene 查询分析程序,它是此语法的必需参数。

  • 设置为以逗号分隔的字段列表时,可用于搜索结果组合,使其只包括在搜索结果上下文中有用的字段。

  • 返回与搜索条件匹配的文档数。 在空搜索字符串上,计数将是索引中的所有文档(在 hotels-sample-index 中,数量为 50)。

    字段化搜索将单个嵌入式搜索表达式的范围限定为特定字段。 此示例搜索包含字词“hotel”的酒店名称,而不是“motel”。 可以使用 指定多个字段。

    使用此查询语法时,如果想要查询的字段在搜索表达式中,则可以省略 参数。 如果字段化搜索包含 ,则 始终优先于 。

    此查询的响应应该类似于以下示例,根据“Resort and Spa”进行筛选,返回名称中包含“hotel”的酒店,同时排除名称中包含“motel”的结果。

    搜索表达式可以是单个字词或短语,也可以是用括号括起来的更复杂的表达式,其中可以选择使用布尔运算符。 下面是部分示例:

    如果想要两个字符串评估为单个实体,请务必将短语放置在引号内,正如这个在 字段中搜索两个不同位置的情况一样。 你可能需要对引号进行转义 (),具体取决于客户端。

    在 中指定的字段必须是可搜索的字段。 如需了解如何特性化字段定义,请参阅创建索引 (REST API)。

    模糊搜索可匹配类似的字词,包括拼写错误的字词。 若要执行模糊搜索,请在单个字词的末尾追加“”波形符,后跟指定编辑距离的可选参数(介于 0 到 2 之间的值)。 例如, 或 会返回 blue、blues 和 glue。

    对此查询的响应会解析为匹配文档中的“concierge”,为简洁起见只截取了一部分:

    不直接支持短语,但你可以基于多部件短语的每个字词指定一个模糊匹配,例如 。 此查询表达式根据“laundry service”查找到 15 个匹配项。

    邻近搜索会查找在文档中相互靠近的字词。 在短语末尾插入波形符“”,后跟创建邻近边界的字数。

    此查询将搜索文档中彼此相距 5 个单词以内的字词“hotel”和“airport”。 引号经过转义 (),以保留短语:

    术语提升是指相对于不包含术语的文档,提高包含提升术语的文档排名。 若要提升字词,请使用插入符号 ,并且所搜索字词末尾还要附加提升系数(数字)。 提升系数默认为 1,虽然它必须是正数,但可以小于 1(例如 0.2)。 术语提升不同于计分配置文件,因为计分配置文件提升某些字段,而非特定术语。

    在“before”查询中,搜索“beach access”,你会注意到有七个文档匹配一个或两个字词。

    实际上只有一个文档与“access”匹配,并且因为它是唯一匹配项,所以其位置较高(第二个位置),即使该文档缺少单词“beach”。

    在“after”查询中,重试该搜索,此时会提升包含字词“beach”而非“access”的结果。 查询的人工可读版本为 。 根据你的客户端,可能需要将 表达为 。

    提升字词“beach”后,“Old Carrabelle Hotel”匹配项向下移动到第六位。

    正则表达式搜索基于正斜杠“”之间的内容查找匹配项,如在 RegExp 类中所记录的那样。

    可将通常可识别的语法用于多个 () 或单个 () 字符通配符搜索。 Lucene 查询分析器支持将这些符号与单个术语一起使用,但不能与短语一起使用。

    在此查询中,搜索包含前缀“sc”的酒店名称。 不能将 或 符号用作搜索的第一个字符。

  • 最新文章
    均安SEO优化攻略,揭秘全方位网站排名提升秘诀
    均安SEO优化策略,全方位提升网站排名秘诀:优化关键词、提高内容质量、加强外链建设、优化网站结构、提升用户体验。通过这些方
    北交所科技成长产业跟踪第三期:华为Mate品牌盛典发布鸿蒙AI新品,关注北交所鸿蒙%26星闪相关公司.pdfVIP
    源引金融活水润泽中华大地内容目录1.华为Mate品牌盛典如期举行,多款AI终端亮相51.1.Mate70蕴含九大AI功能,MateX6首发星闪关机
    一、智能创作平台的全方位解决方案
    在数字化时代的浪潮中内容创作已成为企业竞争和塑造的核心环节。传统的内容创作方法往往耗时耗力,且难以保证内容的品质和一致性
    【GPT-4】GPT-4 是否已经显示出通用人工智能的迹象?——微软已经为 OpenAI 的 GPT-4 创建了一系列测试,它声称表明人工智能模型已经显示出通用智能的“火花”
    目录 GPT-4 是否已经显示出通用人工智能的迹象? Is GPT-4 already showing signs of artificial general intelligence? "We bel
    惠普和rog哪个好(6000买惠普还是华硕)
    在操作系统选择方面,ROGGU604和HP暗影精灵9/光精灵9均支持流行的Windows和Linux系统,提供灵活的使用环境。 ROGGU604 的快速充
    【HM1SUC浏览器下载】小米HM1SUC浏览器17.1.6.1347免费下载
    UC专注16年,成就全球第三方手机浏览器全球6亿人上网必备APP,群众的眼睛是雪亮的头条视频小说网盘小游戏,想你之所想一应俱全UC
    如何有效获取视频号微信搜索流量(实用技巧,让你的视频号获得更多关注)
    视频号微信已经成为了许多人获取流量的何有号获平台、随着社交媒体的效获发展。如何让自己的取视视频号在微信搜索中获得更多的流
    【R7(R7t/移动4G)支付宝下载】OPPO R7 R7t/移动4G支付宝10.6.70.8100免费下载
    支付宝是蚂蚁集团旗下业务,诞生于2004年,已经成长为的数字支付开放平台和服务业数字化经营开放平台。我们面向消费者、各行各业
    SEO神器助力企业网站,高效排名优化,提升在线曝光力
    SEO推广软件排名优化,是帮助企业提升网站在线曝光率的有效工具。通过智能算法和策略,该软件助力企业网站在搜索引擎中实现更优
    湘潭360seo优化报价_湘潭专业的关键词优化报价保举(湘潭有实力sem优化哪家好)
    秒速排为企业提供一站式seo推广办理方案,核心业务包罗百度霸屏企业站群推广百家号运营,企业网站建立,百度推广百度竞价托管360