2

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

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

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

4

2 回答 2

4

您可以使用通配符:

 allFiles = dir( 'G:\folder\myfilename\*hello*.*' );
于 2012-11-14T17:47:52.900 回答
0

请参阅此答案以获取目录中所有文件的列表。

然后您可以使用regexpi来识别任何包含该字符串的文件'hello'

或者正如彼得 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)(也在倒数第二行)

于 2012-11-14T21:39:02.097 回答