繁体   English   中英

Lucene MemoryIndex:添加Lucene字段

[英]Lucene MemoryIndex: Add Lucene Field

我想使用lucene的MemoryIndex (使用4.7.1),但是我需要能够添加lucene 字段,以便可以使用整数字段或StringField之类的东西。

我知道通过添加可以包含Lucene字段的文档在RAMDirectory中实现此功能,但是在MemoryIndex中可以实现吗?

您当然可以将字段添加到索引中,而不能添加Field 对于StringFieldTextField ,这相当简单,因为有一个很好的便捷方法供您使用。 对于StringField ,类似:

index.addField("thestring", text, new KeywordAnalyzer());

对于TextField

index.addField("sometext", text, new StandardAnalyzer(Version.LUCENE_47));

对于IntField和其他数字,您需要自己生成令牌流。 NumericTokenStream是此处感兴趣的类:

NumericTokenStream stream = new NumericTokenStream();
stream.setIntValue(myInt);
index.addField("aninteger", stream);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM