String 将文件名字符串转换为数字

String 将文件名字符串转换为数字,string,matlab,loops,filenames,String,Matlab,Loops,Filenames,我有以下种类的文件名: u_结果_901.xls u_结果_902.xls u_结果_903.xls u_结果_904.xls u_结果_905.xls 以此类推,50+以上 还有 v_结果_901.xls等 及 zeta_结果_901.xls等 我需要通过一个脚本来运行每个文件,该脚本管理电子表格中的数据。我不想一个接一个地喂他们 如何将这些fName转换为数字? 我可以使用strtok缩短fnames,然后可能str2num剩余的“901”字符串。。。但我不知道如何删除数字前后的内容 也许s

我有以下种类的文件名:

u_结果_901.xls

u_结果_902.xls

u_结果_903.xls

u_结果_904.xls

u_结果_905.xls

以此类推,50+以上

还有

v_结果_901.xls等

zeta_结果_901.xls等

我需要通过一个脚本来运行每个文件,该脚本管理电子表格中的数据。我不想一个接一个地喂他们

如何将这些fName转换为数字? 我可以使用
strtok
缩短fnames,然后可能
str2num
剩余的“901”字符串。。。但我不知道如何删除数字前后的内容

也许
strread

试试这个:

fileSplit = strsplit(fileName,'_');
fileNumber = str2num(fileSplit(end));

如果模式相似。尝试使用多个“子字符串”删除最后4个字符(扩展名),并对起始字符执行相同操作。这不是一个答案,只是一个建议。我的工具箱中没有
strsplit
。请从FEX:获取它,或者使用substring(如果可以):