在matlab中处理具有特定名称和扩展名的列表

时间:2015-02-24 21:25:20

标签: matlab dir

我试图处理以相同字符串开头的文件列表,但只处理.mat文件。在我的文件夹中,我有一些名称如下的日志文件:

CADS3P5Ph1_LKS_20141210_EVAL_103443_001.avi                   
CADS3P5Ph1_LKS_20141210_EVAL_103443_001_MeasData.mat 
CADS3P5Ph1_LKS_20141210_EVAL_103443_002.avi                  
CADS3P5Ph1_LKS_20141210_EVAL_103443_002_MeasData.mat  
CADS3P5Ph1_LKS_20141210_EVAL_103443_003.avi             
CADS3P5Ph1_LKS_20141210_EVAL_103443_003_MeasData.mat  
CADS3P5Ph1_LKS_20141210_EVAL_104236_001.avi           
CADS3P5Ph1_LKS_20141210_EVAL_104236_001_MeasData.mat  

我只需要处理具有相同时间戳的文件(例如103443_xxx) 我用一个通配符

创建了一个变量
filename = CADS3P5Ph1_LKS_20141210_EVAL_103443_001_MeasData.mat
general_name = filename(1:end - 17); 
general_name = strcat(general_name,'*','');

因此,当我执行dir(general_name)时,它会找到所有以" CADS3P5Ph1_LKS_20141210_EVAL_103443"开头的文件, 我如何只获取.mat文件,而不是.avi文件 我试过了

dir(general_name && *.mat) 

有没有办法让这样的工作成功?

谢谢!

1 个答案:

答案 0 :(得分:0)

strcatgeneral_name一起使用,并使用.mat扩展名的通配符:

dir(strcat(general_name,'*.mat'))