gpt4 book ai didi

Lucene:如何索引和搜索单个字段下的多个值

转载 作者:行者123 更新时间:2023-12-05 01:07:09 24 4
gpt4 key购买 nike

如何索引和搜索单个字段下的多个值。

例如说我有一个字段 处理器 可能有 i3、i5、i7 i3 i3,i5 值。
现在想象一个笔记本电脑数据如下:

数据1:

 name= laptop name
price = laptop price
processor=core duo

数据2:
 name= laptop name
price = laptop price
processor=i3,i5

数据3:
 name= laptop name
price = laptop price
processor=i3,i5,i7

现在,

如果用户只想搜索 i3 和 i5 处理器,则应仅显示 data2 和 data3。

所以我的问题是我应该如何 索引搜索 琉森。我正在使用 lucene 4.4。

我查了 this但无法理解,因为没有例子。一个例子对我有好处。

最佳答案

坦率地说,它真的没有太多。使用使用 StandardAnalyzer和标准QueryParser ,您只需将字段添加到文档中,以显示的形式,例如:

Document document = new Document();
document.add(new TextField("name", "laptop name"));
document.add(new TextField("processor", "i3,i5,i7"));
//Add other fields as needed...
//Assuming you've set up your writing to use StandardAnalyzer...
writer.addDocument(document);

StandardAnalyzer 将标记标点符号(和空格等),在“处理器”字段中索引标记“i3”、“i5”和“i7”,因此在使用时仅使用标准 QueryParser (见 query parser syntax ),查询:
processor:(i3 i5)

将在“处理器”字段中找到任何带有“i3”或“i5”的字段

关于Lucene:如何索引和搜索单个字段下的多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18947385/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com