OpenGrok添加根据文件名后缀进行查询过滤的功能

本文介绍了如何在OpenGrok中添加文件名后缀查询过滤功能。通过分析OpenGrok的源码,如IgnoredNames和SearchEngine,探讨了修改搜索逻辑的可能性。提出了两种潜在方案:调整收藏家(collector)行为或修改添加到Document的条件。由于Lucene的限制,选择了修改Document添加条件,但面临如何从Document获取文件后缀的挑战。进一步研究了IndexDatabase和Lucene的FieldValueFilter、FieldCacheTermsFilter,发现内置过滤器的包括(includes)语义并不符合需求,可能需要自定义实现排除(excludes)语义的过滤器。
摘要由CSDN通过智能技术生成

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">OpenGrok默认会将*.o *.so这些二进制文件也加入索引(其实没什么坏处),如果想在查询时过滤这些文件,怎么做?</span>


要点:

https://github.com/OpenGrok/OpenGrok/blob/master/src/org/opensolaris/opengrok/index/IgnoredNames.java

IgnoredNames是默认的索引过滤,对文件路径做字符串匹配。


https://github.com/OpenGrok/OpenGrok/blob/master/src/org/opensolaris/opengrok/search/SearchEngine.java

可对这里的searchSingleDatabase

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值