gpt4 book ai didi

python - 使用 ruby​​ 或 python 在文件中查找

转载 作者:数据小太阳 更新时间:2023-10-29 07:26:34 25 4
gpt4 key购买 nike

流行的文本编辑器具有以下“在文件中查找”功能,该功能会在对话框中打开:

 Look For:       __searchtext__
File Filter: *.txt; *.htm
Start From: c:/docs/2009
Report: [ ] Filenames [ ]FileCount only
Method: [ ] Regex [ ]Plain Text

事实上,几个流行的文本编辑器都有这个。

我想做同样的事情,但使用 python 或 ruby​​ 类而不是文本编辑器。这样,就可以在任何支持 ruby​​ 或 python 的平台上从脚本运行同样类型的脑死亡简单操作。

问题:我不想自己写这个,所以有人知道接受相同或相似的简单输入参数并能达到您期望的效果的 ruby​​ 或 python 脚本吗?

我正在寻找可以进行强力线性搜索的东西,与索引搜索无关。

最佳答案

我知道你说过你不想自己写它,但就它的值(value)而言,使用 os.walk 会非常容易 - 你可以这样做:

results = []
if regex_search:
p = re.compile(__searchtext__)
for dir, subdirs, subfiles in os.walk('c:/docs/2009'):
for name in fnmatch.filter(subfiles, '*.txt'):
fn = os.path.join(dir, name)
with open(fn, 'r') as f:
if regex_search:
results += [(fn,lineno) for lineno, line in enumerate(f) if p.search(line)]
else:
results += [(fn,lineno) for lineno, line in enumerate(f) if line.find(__searchtext__) >= 0]

(顺便说一句,这是 Python)

关于python - 使用 ruby​​ 或 python 在文件中查找,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/842598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com