如何在Azure搜索中加工所有文档

时间:2017-04-20 08:44:54

标签: lucene azure-search

我希望从azure search获取所有文档,并使用NOT运算符过滤掉。例如,我想获得没有术语wifi的所有文档。

NOT运算符不能单独使用,来自lucene文档:

  

NOT运算符不能仅与一个术语一起使用。例如,   以下搜索将不会返回任何结果:   NOT "jakarta apache"

为此,我们必须匹配所有文档,然后筛选出一些:

*:* NOT wifi

问题:如何在lucene中匹配azure search中的所有文档,例如*:*? 提前谢谢!

1 个答案:

答案 0 :(得分:1)

一种方法是发布匹配所有文档的正则表达式搜索,并过滤掉您不希望使用NOT运算符的文档。请注意,仅在完整的Lucene查询语法(queryType = full)中支持正则表达式搜索。

例如。

search = /。* / NOT" Jakarta apache"& queryType = full。

请注意"匹配所有"正则表达式模式可能很昂贵,因为它扩展到索引中可搜索字段中的所有项。请确保它符合您的期望性能。

Nate