下docfetcher先下Java,DocFetcher使用教程——高效的文档文本检索工具
DocFetcher简介
DocFetcher是一个使用Java语言开发的开源桌面搜索应用程序:它允许您搜索计算机上的文档内容,能够在Windows,Linux和OS X上运行。
本人在工作中已经使用DocFetcher超过半年时间,主要用来在代码库中查找包含关键字或关键字的组合的源码文件,基本能够满足我的工作中检索源码的需要。而Docfetcher奇快的查找速度着实给了我不种草都不行的理由,当然,Docfetcher也并非完美无瑕,在日常使用中也发现其存在一些bug,但不影响主要功能的使用。
下载安装
运行环境:Java Runtime Environment(JRE)1.7 +
安装方法:windows平台请使用 .exe 安装包进行安装,其他平台请参照官方文档
使用方法
part1 建立索引
为了快速的进行文本检索,DocFetcher在检索文档文本前需要建立索引,用户可以根据需要为文件夹或者整个磁盘建立索引,当然,仅仅在第一次检索时需要为所要检索的文件夹或磁盘建立索引,建立索引后,当文件内容发生了变化DocFetcher会自动更新索引。以下是建立索引的详细方法:
step 1
如图所示,右击[搜索范围]框的空白处,选择弹出菜单中的[建立索引 - 资料夹]。
step 2
在弹出的选择窗口中选择需要检索文档的位置,点击[确认]。
step 3
在弹出的窗口中可以对索引的细节进行设置,可以选择所要检索的文件格式,在排除列表中可以使用正则表达式过滤不需要建立索引的文件和文件格式,其他选项没有特殊要求使用默认值即可。最后选择[执行],将开始建立索引。
step 4
建立索引的过程耗时较长,具体时间取决于所选建立索引的文件夹中包含的文件数量及文件大小。索引建立完成后在首页的[搜索范围]框内便有了对应的目录。
part2 检索数据
对于建立好索引的目录,可以通过勾选检索目录、勾选文件类型、设定文件大小、输入关键字来进行文本检索。
1. 检索语法
这里仅对DocFetcher的检索语法做简单介绍,详细内容请参照官方文档。
短语搜索:需要将所要检索的短语放入英文双引号内。如 :"可转债",返回包含词语"可转债"的文件;
布尔运算:支持复杂条件的检索,常用运算符包含 AND、OR 、NOT等,短语间没有运算符时将默认使用OR。如 "可转债" AND "可交换债",返回既包含短语"可转债"又包含短语"可交换债"的文件;
通配符:问号('?')和星号('*')可用于表示某些字符未知。如 :"可"*,返回包含"可以"、"可转债"、"可交换债"等包含以"可"开头的语句的文件;
模糊搜索:可以搜索与给定单词类似的单词。如,roam~,返回包含foam和的单词的文档roams的文件。
2.检索示例
检索包含短语"Bond_Issue"的文件,点击检索结果里的文件可以在下方的预览框预览文件的内容,预览中命中的检索关键字将被标红,如下图所示。
检索即包含"Bond_Issue" 和短语 "WBPJRQ" 的文件,如下图所示。
part3 设置
通过点击右上角的齿轮状按钮可以进入[设置]。在设置中可以对默认布尔运算符进行修改、自动预览一个人符合的项目、使用及时搜索等,还可以对预览的字体,命中文本的颜色,快捷键等进行设置。
part4 注意事项
1. 内存大小限制
DocFetcher的默认内存限制为256 MB,因此DocFetcher运行时占用的内存大小和资源都是相当小的,但是当检索速度过慢或者索引建立时存在单个文件过大而导致索引建立失败则需要提高内存大小。
Windows平台下,DocFetcher内置了多个不同内存大小的启动器,其位于DocFetcher安装目录下的misc目录下。
在misc目录下,文件名"DocFetcher-2048_64-bit-Java.exe"中的"-2048"即是表示使用2048MB的内存启动,"64-bit-Java"表示为64位的启动程序,适用于64位系统。可根据自己的实际情况选择合适的启动器。
很重要的一点是,这些备用启动器在使用时需要将其从misc目录复制到DocFetcher安装目录下,复制完成后,双击该启动器即可启动对应内存大小的DocFetcher。其他平台的增加内存方法请参照DocFetcher-设置-说明。
2.检索关键字格式
检索中文,因为DocFetcher中文分词器的原因,如果想搜索整个词语请务必使用英文双引号括住,否则将导致DocFetcher将词语分词后使用 OR 运算进行检索,最终使检索结果出乎意料。
3.搜寻范围越界的问题
使用DocFetcher检索时,可能只是勾选了一个搜寻目录,但搜索结果可能包含了未勾选的目录的内文件,这可能是DocFetcher的一个BUG,目前暂不清楚原因。解决方法是尝试勾选其他目录,再取消勾选,再点击搜索。
P.S
欢迎反馈与交流。
转载或引用本文请注明来源网址与作者。
版权所有,转载或引用本网站内容不得进行如下活动:
a. 损害本人或他人利益;
b. 任何违法行为;
c. 任何可能破坏公秩良俗的行为;
d. 擅自同意他人继续转载、引用本网内容。
标题:DocFetcher使用教程——高效的文档文本检索工具
作者:之见
版权:版权所有,转载或引用本文请注明来源网址与作者
地址:http://zhijian.kim/articles/2019/09/20/1568960561442.html
下docfetcher先下Java,DocFetcher使用教程——高效的文档文本检索工具相关推荐
- java smart算法_Java Restful API 文档生成工具 smart-doc
谁说生成api文档就必须要定义注解? 谁说生成接口请求和返回示例必须要在线? 用代码去探路,不断尝试更多文档交付的可能性. 如果代码有生命,为什么不换种方式和它对话! 一.背景 没有背景.就自己做自己 ...
- 基于Java毕业设计疫情下居家隔离服务系统源码+系统+mysql+lw文档+部署软件
基于Java毕业设计疫情下居家隔离服务系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计疫情下居家隔离服务系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B ...
- 计算机毕业设计Java疫情下的居民管理系统(系统+源码+mysql数据库+Lw文档)
计算机毕业设计Java疫情下的居民管理系统(系统+源码+mysql数据库+Lw文档) 计算机毕业设计Java疫情下的居民管理系统(系统+源码+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B ...
- ubuntu下.chm文档查看工具
以前在ubuntu下查看.chm帮助文档时,用的是chmsee这个虽然是中英问显示都还OK,但是有一点不好的就是,没有索引功能. 等你不知道你所找的那个函数是在那个包下时,是很难找到这个函数的. 今天 ...
- Java 使用word模板创建word文档报告教程
上面是java 利用word模板生成的一个word报告文档,利用的是第三方类库Poi-tl 是实现的. poi-tl是一个基于Apache POI的Word模板引擎,也是一个免费开源的Java类库,你 ...
- windows下的文档搜索工具
1.项目背景 在windows下进行磁盘查找速度过慢(可以为文件建立索引来提高查找效率).因此参考everything,借助于数据库,设计一个自己的文档搜索工具. 2.everything原理 E ...
- JAVA不使用POI给Word文档添加水印
程序员在开发项目时,经常需要给一些图片.文件添加水印,但往往代码编写复杂,只能是先将文件上传再调用Graphics类才能实现这一功能.但是最无奈的是这个类只能给图片添加水印,而无法通过程序给Word文 ...
- java pdf打印_Java 打印PDF文档
本文将介绍如何在Java应用程序中打印PDF文档.一般有以下三种常见打印方式:静默打印 显示打印对话框打印 打印PDF时自定义纸张大小 使用工具:Free Spire.PDF for Java 创建运 ...
- Java实现生成数据库表结构文档(生成工具screw的使用)
目录 一.screw介绍 1.简介 2.特点 3.文档格式 二.生成方式 2.1 方式1:使用 Java 代码 2.1.1 引入依赖 2.1.2 编写代码 2.1.3 测试 2.2 方式2:使用 Sp ...
- JAVA实现模板word文档导入,Java依据word模板生成word文档之后台解析和实现及部分代码(一)...
Java根据word模板生成word文档之后台解析和实现及部分代码(一) 后台主要工作是解析XML定义的标签文件,并获取到数据集,放入到Map中,然后调用Jacob.jar中提供的相关方法来实现替换. ...
最新文章
- Gym迎来首个完整环境文档,强化学习入门更加简单!
- 谷歌让AI芯片学会“下崽”,下一代TPU就让AI自己设计
- C++ 模板偏特化-来自STL的思考
- selenium打开chrome浏览器代码
- “算法复杂度”——其实并没有那么复杂
- Haproxy + Pacemaker 实现高可用负载均衡(一)
- 彻底解决iOS项目中 _OBJC_CLASS_$_XXXService, referenced from: 的类似问题
- 设计模式笔记二:抽象工厂模式
- python学习-- django 2.1.7 ajax 请求 进阶版
- C#正则表达式提取HTML中IMG标签中的SRC地址
- 微软张宏江出任金山CEO 求伯君正式退休
- 如何设置unobtrusive的语言包
- 学习笔记-AngularJs(三)
- 移动端获取手机网络信息
- USYD悉尼大学DATA1002 详细作业解析Module7(全新讲解)
- IDEA方法名,javadoc神器
- C语言简单教程一:编程的第一课
- 销售凭证、客户主数据
- 谷歌将发布全新搜索引擎,你期待吗?
- win10强效杀毒去捆绑
热门文章
- 百度文库免费复制文字_百度文库免费下载Word全方案
- iphone图片编辑画笔_苹果手机截屏后怎么编辑,这么实用你可一定要知道
- pp助手苹果版_曾联合盘古团队开发越狱工具的PP助手将在月底关停iOS相关业务...
- 在SCDN中如何转载别人文章
- truecrypt linux用法,TrueCrypt for Linux好吗
- clientHeight、scrollHeight、offsetHeight的区别和理解
- 中了Viking,抓到CONFIG.EXE,NTDLL32.dll,webpnt.exe等
- dos命令 oracle显示时间,Oracle 常用 Dos命令
- 2018年中国互联网企业百强榜单揭晓
- 基于单片机烟雾温湿度甲醛监测设计