Solr中的模糊字符串匹配和术语频率
Solr可以使用函数query termfreq(字段“term”)返回给定术语的术语频率。然而,据我所知,你不能得到模糊匹配的术语频率;您不能写入termfreq(字段,'term~1')以获取Levenshtein距离1内所有术语的术语频率 例如,假设我有两个文档,1和2,其中文档1包含两次“cats”,文档2包含一次“carts”,并运行查询:Solr中的模糊字符串匹配和术语频率,solr,Solr,Solr可以使用函数query termfreq(字段“term”)返回给定术语的术语频率。然而,据我所知,你不能得到模糊匹配的术语频率;您不能写入termfreq(字段,'term~1')以获取Levenshtein距离1内所有术语的术语频率 例如,假设我有两个文档,1和2,其中文档1包含两次“cats”,文档2包含一次“carts”,并运行查询:q=cats~1&fl=id,freq:termfreq(text,cats),响应如下所示: {'response': {'docs': [{'
q=cats~1&fl=id,freq:termfreq(text,cats)
,响应如下所示:
{'response': {'docs':
[{'id': 1, 'freq': 2},
{'id': 2, 'freq': 0}]
...
}
我想要的是,搜索扩展到的术语的术语频率包含在术语频率中,以便响应类似于:
{'response': {'docs':
[{'id': 1, 'freq': 2},
{'id': 2, 'freq': 1}]
...
}
在Solr中是否有任何方法可以相对简单地做到这一点或类似的事情?在Solr中做到这一点的唯一方法是预处理查询词的不同组合,并使用它来查找词的频率