search-keywords库的介绍 - 快速查询关键字存在于哪些文件

1. 创作背景

你是否遇到这种情况,在某个文件写了某一行代码,过一会就忘记了,由于项目文件过多,要找到很不容易,作者就是遇到太多次这情况了,所以选择开发了该库

2. 该库查询速度测试

经过测试,中小型项目基本是0~2秒左右,作者测试了一个大小几G,文件几十万个,文件夹几十万个左右的目录(由于计算文件数量太久了,所以没有继续等了),最后用了81秒查询完毕
大家也可以试试去挑战更多更大的目录需要花费多少时间
在这里插入图片描述

在这里插入图片描述

3. 安装环境

  1. git下载地址
  2. nodejs下载地址(如果是下载的压缩包记得配下node和npm的环境变量)
  3. git clone速度太慢解决方案(谷歌浏览器GitHub加速插件实测有效)
  4. 若npm下载速度太慢,解决方案
  5. 该库文档

4. 安装库

npm install search-keywords
或者
yarn add search-keywords

5. 创建search.js文件

文件位置任意

//这是  search.js  文件
const scriptSearch = require("search-keywords");
const path = require("path");
const config = {//配置
    rootDirPath: path.resolve(__dirname),//查询的根目录(绝对路径)
    keywords: ["const","require"]//多个关键字查询
}

//不传配置则使用默认配置
scriptSearch(config);

6. 见证奇迹,通过node运行第4步创建的文件

node search.js

7. 最终效果

在这里插入图片描述

8. 其他配置

validExts:允许查询的文件后缀,如:[".vue",".py",".c"…]

excludeKeywords:排除的目标文件或目录,根据path-to-regexp库规则进行配置,也可直接传绝对路径

outType:输出方式,默认console输出在控制台,可选file输出到_keywords.json文件中

具体详细配置参考链接,点我~

9. 结尾

希望这个库对大家有所帮助,能提高大家的开发效率。

喜欢的记得点个赞,关个注,留个言,谢谢哈~

有问题,github提issue , 或联系qq1050132079

批量统计多个txt文件关键字通常涉及到文本处理和数据分析。以下是一种常见的步骤: 1. **设置环境**:首先,你需要选择一种编程语言,比如Python,它有很多支持文本操作,如`os`, `re`(正则表达式)和`collections`。 2. **遍历文件**:使用`os`模块的`listdir()`函数获取指定目录下的所有.txt文件名,然后通过循环逐个打开并读取每个文件的内容。 3. **提取关键字**:对于每行文本,你可以使用正则表达式或其他字符串处理方法来识别关键字。这可能需要预先定义一个关键词列表,或者如果你有特定的模式来识别关键字,可以直接匹配。 4. **计数统计**:将提取到的关键字添加到一个字典或者`defaultdict`中,键是关键字,值是对应的出现次数。如果关键字已经存在,则增加计数;如果不存在,则初始化为1。 5. **汇总结果**:处理完所有文件后,你会得到一个包含所有文件关键字及其出现频率的总统计。 6. **保存或输出**:可以选择将结果保存到一个新的文件,或者直接打印出来。 **示例代码(Python)**: ```python import os from collections import defaultdict def count_keywords_in_files(directory, keyword_list): keyword_counts = defaultdict(int) for filename in os.listdir(directory): if filename.endswith('.txt'): with open(os.path.join(directory, filename), 'r', encoding='utf-8') as file: for line in file: for keyword in keyword_list: keyword_counts[keyword] += line.count(keyword) return keyword_counts # 使用方法 keywords_to_search = ['关键字1', '关键字2', ...] directory_to_search = 'your_directory_path' result = count_keywords_in_files(directory_to_search, keywords_to_search) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值