Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Azure搜索中,您如何运行;包括「;在searchtext中使用多个术语进行搜索?_Azure_Azure Sql Database_Azure Cognitive Search - Fatal编程技术网

在Azure搜索中,您如何运行;包括「;在searchtext中使用多个术语进行搜索?

在Azure搜索中,您如何运行;包括「;在searchtext中使用多个术语进行搜索?,azure,azure-sql-database,azure-cognitive-search,Azure,Azure Sql Database,Azure Cognitive Search,我在CosmosDB上以完全查询模式使用Azure Search,我想对任何包含字符串“azy do”的字段的文档运行查询。例如,这应该与包含“lazydog”的文档相匹配 在阅读Azure搜索文档时,由于使用了基于术语的索引,这似乎是不可能的 拒绝的解决方案 0个匹配项,因为它正在查找整句话:“azy do” 不起作用,因为不允许正则表达式跨越多个术语:/.azy do/ 如果匹配“lazy dog”,则此“有效”,但这不尊重查询的顺序,也将匹配“dog lazy”,例如/.azy./和/.d

我在CosmosDB上以完全查询模式使用Azure Search,我想对任何包含字符串“azy do”的字段的文档运行查询。例如,这应该与包含“lazydog”的文档相匹配

在阅读Azure搜索文档时,由于使用了基于术语的索引,这似乎是不可能的

拒绝的解决方案

0个匹配项,因为它正在查找整句话:“azy do”

不起作用,因为不允许正则表达式跨越多个术语:/.azy do/

如果匹配“lazy dog”,则此“有效”,但这不尊重查询的顺序,也将匹配“dog lazy”,例如/.azy./和/.do./


在Azure Search中有没有正确的方法可以做到这一点?

如果您无法通过Lucene查询语法中的正则表达式实现这一点,那么这是不可能的。你可能想投支持票

它应该是/懒狗/
因此,根据空格拆分术语,并添加一个管道(|)分隔符,表示或。

简而言之,Azure Search不支持这种情况。根据您使用的查询语言,您最好在Cosmos DB或其等效工具中使用该函数


Azure Search旨在查找非结构化内容(文档)中出现的术语或短语,并返回最相关的文档。提取和索引这些可搜索术语的过程是可定制的,如下所述:。

有人能帮我为上述用例创建一个自定义分析器吗?以后请用[Azure Search]标记Azure Search问题。否则Azure搜索团队不会收到您的问题通知。