Azure搜索 - 查找单词中的匹配项,如"包含"

时间:2016-11-30 16:48:10

标签: azure lucene search-engine azure-search

我使用Azure搜索,后者又使用Lucene。有没有办法让搜索不那么严格。 我需要的是搜索" 术语"应将文档与包含" term "。

的字词匹配

提供狐狸期限应符合"前缀期限"," 期限后缀", "前缀的期限后缀"

Serching fox part2 应匹配" part1 part2 "," part2 part3", "第一部分的第2部分第三部分"

我需要运行搜索查询,其中包含多个术语,如

"term part2"

匹配以下文件:

{ someField:"... PrefixTermSuffix ... part1part2part3 ..." }
{ someField:"... PrefixTerm ... part2part3 ..." }
etc

1 个答案:

答案 0 :(得分:5)

您可以在Azure搜索中使用Lucene查询语法中的regex表达式。在您的示例中,您可以构造一个正则表达式查询,如/. term./ /。 part2./,以查找包含两个搜索项作为子字符串的术语的文档。

https://[service name] .search.windows.net / indexes / [search index] / docs?api-version = 2016-09-01& queryType = full & search = /.* term。* / /.* part2。* /

Azure Search支持两种查询语法,简单和完整。后者启用Lucene查询语法。请参阅我们的文档(https://docs.microsoft.com/en-us/rest/api/searchservice/lucene-query-syntax-in-azure-search)以了解有关这些功能的更多信息。