是否可以在matlab中的文件夹内的文件中搜索特定的表达式/条目?

时间:2012-11-14 17:45:39

标签: matlab

是否有命令在matlab中搜索“文件夹中存在的文件中的特定条目”? 就像我想在文件夹A中的所有文件中搜索单词“hello”。

allFiles = dir( 'G:\folder\myfilename' );
allNames = { allFiles.name };

只允许我搜索特定文件夹中的特定文件。:(

2 个答案:

答案 0 :(得分:4)

您可以使用通配符:

 allFiles = dir( 'G:\folder\myfilename\*hello*.*' );

答案 1 :(得分:0)

请参阅this answer以获取目录中所有文件的列表。

然后,您可以使用regexpi来识别包含字符串'hello'的所有文件。

正如Peter D所指出的那样:

  

我发现在函数中构建正则表达式很有用。

if ~isempty(fileList)     
   fileList = cellfun(@(x) fullfile(dirName,x),'UniformOutput',false);
   matchstart =  regexp(fileList, pattern); 
   fileList = fileList(~cellfun(@isempty,  matchstart));
end 
     

并将函数签名更改为

     

getAllFiles(dirName, pattern)(也在第二行到最后一行)