Lucene 如何获取文档中多词短语的术语频率?

Lucene 如何获取文档中多词短语的术语频率?,lucene,Lucene,我能够在Lucene中获得文档的单字术语频率。我如何做同样的事情,但对于一个多词短语的自定义列表?例如:假设我在文档中有以下文本: The quick brown fox jumps over the lazy dog. The quick onyx goblin jumps over the lazy dwarf. 术语频率向量将显示: Word Frequency ---- --------- the 4 quick 2 brown

我能够在Lucene中获得文档的单字术语频率。我如何做同样的事情,但对于一个多词短语的自定义列表?例如:假设我在文档中有以下文本:

The quick brown fox jumps over the lazy dog.
The quick onyx goblin jumps over the lazy dwarf.
术语频率向量将显示:

Word       Frequency
----       ---------
the        4
quick      2
brown      1
onyx       1
fox        1
goblin     1
jumps      2
over       2
lazy       2
dog        1
dwarf      1

但是如果我想数一数“快速”这个短语的例子呢?在这种情况下,将有2个匹配项。

我打赌您使用的是简单分析链。您可以将(使用
minShingleSize=2
maxShingleSize=2
)附加到令牌筛选器列表中,以便令牌流的输出如下所示:

敏捷的
->
敏捷的棕色
->
棕色的狐狸
->
狐狸跳跃
->
跳过
->
懒狗

因此,您将把问题简化为已解决的问题