文件交换的选择

我们最好的用户提交

快,在MATLAB编程字符串搜索文件

汪东城本周的选择findInM由我们自己的布雷特Shoelson

如果你知道布雷特,你可能做如果你花任何时间在MATLAB的中央,你知道所有的有用的文件交换条目他的贡献。毫无疑问他是排名8。除了许多条目相关的图像处理,他上传了一些实用函数,findInM是必备的。文件交换条目的标题从“快速、程序化的字符串搜索…”,它到底是什么。它搜索一个字符串的文本在MATLAB文件中,但它是快速和编程。已经有许多条目中搜索文本文件交换文件,包括mfilegrep,mgrep,grep。还有一个互动的方式从将来发布的搜索。

从布雷特的描述的条目,findInM”可以比任何其他方法快得多[他]。”The way Brett accomplishes this efficient search is by first creating an index of the MATLAB files in the folders. This step takes some time, but afterwards, the search happens on the index file and is very efficient.

在这个例子中,我首先创建一个索引/ MATLAB工具箱文件夹(及其子文件夹)的安装。然后从20000多寻找一些文本文件花了不到10秒钟。

抽搐s = findInM (“图论”,“工具箱”)目录
按日期排序,最新之上:年代= C: \ Program Files \ MATLAB工具箱\ R2014b \ \ bioinfo \ bioinfo \内容。m“C: \ Program Files \ MATLAB工具箱\ R2014b \ \ bioinfo \ biodemos \ graphtheorydemo。m“C: \ Program Files \ MATLAB \ R2014b \ MATLAB工具箱\ \ sparfun \内容。m“C: \ Program Files \ MATLAB \ R2014b \ MATLAB工具箱\ \ sparfun \ gplot。m“C: \ Program Files \ MATLAB工具箱\ R2014b \ \ bioinfo \ graphtheory \内容。m的运行时间是8.334972秒。

作为比较,交互式“找到文件”工具MATLAB接管5分钟做同样的搜索。

感谢这个伟大的工具,布雷特!我有几个建议改进。

  • 每7天,函数提示用户看看他/她想重新生成索引文件。也许这可能是有些自动化如果索引过程的状态捕获文件(文件大小、修改日期)。它可以自动重新生成索引推荐如果通知的变化状态。
  • 索引文件是一个DOC文件。很容易打开/编辑一个DOC文件。使用非标准扩展可能会更好,所以它不可能不小心打开了,很容易区别常规DOC文件。例如,在Windows中,一些与图像缩略图数据库文件夹叫“Thumbs.db”。也许findInM可以创建一个文件叫做“mIndex。mi”之类的。

评论

给一试,让我们知道你的想法在这里或者离开评论布雷特。




发表与MATLAB®R2014b

|
  • 打印
  • 发送电子邮件

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。