使用ruby或python在文件中查找
发布时间:2020-12-17 02:50:15 所属栏目:百科 来源:网络整理
导读:一个流行的文本编辑器具有以下“在文件中查找”功能,该功能在对话框中打开: Look For: __searchtext__ File Filter: *.txt; *.htm Start From: c:/docs/2009 Report: [ ] Filenames [ ]FileCount only Method: [ ] Regex [ ]Plain Text 事实上,一些流行的文
一个流行的文本编辑器具有以下“在文件中查找”功能,该功能在对话框中打开:
Look For: __searchtext__ File Filter: *.txt; *.htm Start From: c:/docs/2009 Report: [ ] Filenames [ ]FileCount only Method: [ ] Regex [ ]Plain Text 事实上,一些流行的文本编辑有这个. 我想做同样的事情,但使用python或ruby类而不是文本编辑器. 问题:我不想自己写这个,所以有人知道一个ruby或python脚本接受相同或类似的简单输入args并做你期望的吗? 我正在寻找做蛮力线性搜索的东西,与索引搜索无关. 解决方法
我知道你说你不想自己写,但是为了它的价值,用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,line in enumerate(f) if line.find(__searchtext__) >= 0] (那是Python,顺便说一句) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |