使用 lucene/java 标记名称

2024-02-26

我有我公司所有员工的姓名(超过 5000 名)。我想编写一个引擎,它可以在在线文章(博客/维基/帮助文档)中即时查找名称,并用用户电子邮件的“mailto”标签标记它们。

截至目前,我计划从文章中删除所有停用词,然后在 lucene 索引中搜索每个单词。但即使在这种情况下,我也会看到很多查询命中索引,例如,如果一篇文章有​​ 2000 个单词,并且只有两次引用人名,那么很可能会有 1000 个 lucene 查询。

有没有办法减少这些查询?或者完全不同的方式来实现同样的目的? 提前致谢


如果你只有 5000 个名称,我会将它们放入内存中的哈希表中,而不用费心使用 Lucene。您可以通过多种方式对它们进行散列(例如,昵称、第一个最后一个或最后一个第一个等),并且仍然具有相对较小的内存占用和真正高效的性能。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 lucene/java 标记名称 的相关文章

随机推荐

  • 桌面应用程序.net中的视频通话

    我正在开发一个 wpf 应用程序 该应用程序应该具有视频通话功能 所以我寻求 Skype 为我提供解决方案 我正在使用 Skype4COM 库来做到这一点 我的应用程序中包含了 Skype 的所有朋友 我可以给朋友打电话 甚至可以进行视频通
  • 判断文件中是否存在字符串

    我有一个字符串列表 例如 John John Doe 彼得潘 在 txt 文件中 我想创建一个循环来检查某个名称是否存在 但是 如果我搜索 Peter 并且只存在 Peter Pan 我不希望这是真的 每行都必须完全匹配 哈哈 ep0的回答
  • 警告 C4267“参数”:从“size_t”转换为“DWORD”,可能会丢失数据

    我正在将代码从 32 位 vs2012 迁移到 64 位 vs2015 我在程序中遇到了以下函数调用 CryptHashData hHash BYTE AUTH ENCRYPTION KEY wcslen AUTH ENCRYPTION K
  • 删除 Meshlab 或 vcglib 中的自相交

    如何使用 Meshlab 应用程序或 vcglib 消除网格的自相交 这超出了范围 但 CGAL 中有一些函数 这仍然是实验性的 没有记录 但您可以使用该功能remove self intersections https github co
  • 不包含适合入口点的静态“main”方法

    我今天开始将代码组织到单独的 cs 文件中 为了允许与 UI 一起使用的方法继续这样做 我将在相同的命名空间和公共部分类名下创建 cs 代码 以便这些方法可以可互操作 我的标头在四个文件中看起来像这样 包括调用的主核心文件 public s
  • 内存警告但活动字节较小

    在我的应用程序中 在重复某些操作 选择图片 处理 多次后 我收到级别 1 的内存警告 然后收到级别 2 的内存警告 然后崩溃 泄漏工具没有显示任何泄漏 我还关注 Instruments 中的分配工具 我的实时字节大约为 4 MB 总共分配了
  • sqldf:从数据帧创建表错误:“没有这样的表”。并创建了两张表而不是一张

    我最近升级了 R RSQLite 和 sqldf 以下版本 通常情况下 sqldf create table foo as select from bar db test db 应该在附加的 sqlite 数据库中创建一个名为 foo 的表
  • 在 Reactjs 中迭代数组

    const cal days Sun Mon Tue Wed Thu Fri Sat const cal months Jan Feb March April May June July August Sept Oct Nov Dec co
  • 组合 Group-Object 和 ForEach-Object?

    我正在开发一个名为Merge Xsd可以合并相似的 XML 模式 它需要一个路径列表 加载模式 合并它们 并生成一个XMLDocument作为输出 特定文件名的所有模式都被认为是 相似的 所以我正在做的就是获取特定目录结构中的所有子项 根据
  • 使用useEffect获取数据时避免使用旧数据

    我的问题是 当自定义挂钩使用useEffect with useState 例如 为了获取数据 在依赖项更改之后但在 useEffect 被触发之前 自定义挂钩会返回过时的数据 来自状态 您能建议一种正确 惯用的方法来解决这个问题吗 我正在
  • 针对具有大量聚合的大型集群的 ElasticSearch 设置

    背景和当前状态 我们正在将集群从 Cassandra 迁移到完整的 ElasticSearch 集群 我们平均索引文档为每秒约 250 300 个文档 在 ElasticSearch 1 2 0 中 它代表每天约 8Go generic i
  • Android 如何避免内存不足错误

    我有很多图像 大约有 500 张分布在 20 个左右的片段中 这些图像都非常小 并且加载得很好 但是我给用户提供了 3 种不同类型的图像的选择 现在如果用户更改图像我收到 OOM 错误 所以我认为这是我处理图像的方式 我认为我需要先回收旧图
  • 基于另一个字段更改 SSRS 中值字符串中特定值文本颜色的表达式

    我的 SSRS 报告中有一个字段 其中包含一串用逗号分隔的数字 来自 SQL 中的合并选择 它看起来像 12 91 160 171 223 如果该值也在报告的另一个字段中 我只想更改该字段中一个特定值 例如 160 的文本颜色 我已经有了这
  • 使用 BigDecimal 计算小数点后的最大位数

    小数点后最多可以有多少位BigDecimalJava 中的值 它 几乎 是无限的 如果将比例设置为整数的最大值 则可以存储大约 20 亿位小数点后的数字 但如果尝试这样做 可能会耗尽内存 如果您需要存储如此多的数字以至于限制成为问题 那么您
  • 如何将UIImage插入到UITextView中

    我正在开发一个可编辑的笔记本类型项目 它随时由一些文本和图像组成 在UITextView如果我们将图像添加为子视图 则帧是固定的 但我有editable选项 所以我必须将图像另存为NSString格式为UITextView 但它应该在 ui
  • AutoMapper 4.2 和 Ninject 3.2

    我正在更新我的一个项目以使用 AutoMapper 4 2 并且遇到了重大更改 当我seem为了解决上述更改 我并不完全相信我已经以最合适的方式做到了这一点 在旧代码中 我有一个NinjectConfiguration 和AutoMappe
  • Android 2.1 WebView 中的 SIGSEGV

    在 Android 2 1 中使用 WebView 时 我间歇性地收到 SIGSEGV SIGSEGV 位于 system lib libwebcore so 内 此 WebView 实现是否存在已知问题 我可以解决该问题以避免 SEGV
  • 由于零而始终将滑块求和到 100% 失败的算法

    这是 应该是 一个函数 它确保多个滑块值的总和always总计为globalTotal 用户可以手动更改滑块值changer value然后当将此函数应用于other滑块 它可以确定它们的新或endVal 它需要startVal需要更改的滑
  • 初学者使用 Linqpad 运行非常基本的 linq to sql 查询的步骤

    尝试使用 Linq 学习LinqPad http www linqpad net 并对如何开始感到沮丧 假设我想编写一个 C 表达式和一个 C 语句 其中 SQL Server 中有一个名为 Products 的表 并且我想提取价格大于 5
  • 使用 lucene/java 标记名称

    我有我公司所有员工的姓名 超过 5000 名 我想编写一个引擎 它可以在在线文章 博客 维基 帮助文档 中即时查找名称 并用用户电子邮件的 mailto 标签标记它们 截至目前 我计划从文章中删除所有停用词 然后在 lucene 索引中搜索