我试图将名称字段索引到elasticsearch中,名称可能是字符串或空字符串(“
),我希望搜索所有包含空值的名称,所以我使用exists
筛选器,但对于exists
筛选器,空值不是空值。
https://www.elastic.co/guide/en/elasticsearch/reference/1.4/query-dsl-exists-filter.html
查询DSL:
{ "filter" : {
"exists" : { "field" : "name" }
}
}
如何将空字符串作为elasticsearchexist
筛选器的空值?有人有好主意吗?
术语过滤器应该完成以下工作:
{
"term": {
"name": ""
}
}
只是用我的一些数据尝试了一下,并得到了结果,但可能取决于您的字段是否“未分析”(像我的字段一样)。
更新:刚刚发现了这个类似的问题,它有一个更详细的答案:在elasticsearch上查找字符串值为空的文档
问题内容: 我在Stream中有Google Guava: 如您所见,过滤器函数内部有一条语句。 我不想在项目中再使用番石榴,所以我只想替换为: 我怎样才能使它更优雅? 问题答案: 您可以编写自己的谓词: 然后,将其用作您的过滤器参数。
我有一个,我希望用户输入一个人的姓名。我认为名称应该包含、和示例。我正在使用来验证用户输入。但是,我不知道如何在我的中设置它。 问题:我应该如何修改我的过滤器来实现上述行为? 任何关于如何验证一个人的名字的建议都被接受。 这是我的DocumentFilter: 这是我的测试类:
我正在从Reddit API检索评论。该模型是线程化的,这样每个评论都可以在内部有一个评论列表,名为回复。下面是一个JSON响应的示例: 这是我如何用POJO建模的。上面的回复将被视为评论列表。 请注意底层CommentData POJO如何引用另一个名为“回复”的CommentList。 这个模型一直工作到GSON到达最后一个没有回复的子CommentData。API提供的不是空字符串,而是空字
问题内容: 尝试滤除具有非null的特定属性的项目 我只想显示一个李;一个给萨莉。这是我没有成功的尝试 您知道如何在不创建自定义过滤器的情况下执行此操作吗?甚至如此,自定义过滤器会是什么样? 问题答案: 根据https://github.com/angular/angular.js/issues/11573(对于Angular> = 1.4),建议使用’‘,它匹配除null / undefined
问题内容: 我想使用一个框并使用适配器功能进行过滤。直到我在文本框中输入空格后,它才能正常工作。 编辑:这是一个 SimpleAdapter不是ArrayAdapter 如果我的列表中包含以下单词:{“ Apple”,“ Banana”,“ Red Apple”}如果键入“ apple”,它将返回其中包含apple这个单词的所有项目(Apple和Red Apple)。如果我键入“ apple”,它
插槽部分渲染到的数据可能是不可视字符串,这样就没办法是实现文字换行显示了,如何识别出不可视字符串使其换行,或者直接赋空呢?