solr - 获取 Solr 结果中匹配项的长度
问题描述
我的 solr 索引包含像
{'term': 'abc corp'},
{'term': 'new software'},
{'term': 'abc corp and ltd'},
{'term': 'abc industry'}
我正在使用以下查询搜索文档term:abc\ co*
。有什么方法可以得到匹配项的长度。例如,对于上述搜索查询,文档应与匹配项的长度一起返回为{'term': 'abc corp', 'length': 6}, {'term': 'abc corp and ltd', 'length': 11}
.
解决方案
处理它的唯一内置方法(我知道)是在索引时使用FieldLengthUpdateProcessor作为您的一个字段的更新链的一部分。处理器将用表示字段长度的整数替换发送到字段的内容,因此通过使用copyField
指令,您可以将相同字符串的长度索引到单独的字段。
我确实创建了一个返回给定字段长度的函数查询,但它没有受到任何关注或被合并到任何版本的 Solr - 请参阅SOLR-9715 - Add function for string length
推荐阅读
- python - 我在 djangorest profile_data = valid_data.pop('profile') KeyError: 'profile' 中有一个问题
- php - Laravel 中的 make 控制器命令的“--resource”是什么意思?
- python - 如何在还包含整数的列表中找到最小的子列表
- c++ - poco 库,静态链接 (MT)
- whatsapp - 我可以将 WhatsApp 视频聊天功能集成到我的 react.js 应用程序中吗?
- python - 如何摆脱我的左手算法的while循环
- javascript - 当 React 已经使用 react-hotkeys-hook 呈现错误时无法刷新更新
- ansible - 循环嵌套的 ansible dict
- c# - 写入操作不会更新 xamarin 表单中 iOS 的特征值
- android-studio - Room 无法验证数据完整性和空数据崩溃