matlab如何从文件名中删除.jpg

Fir*_*Sky 1 matlab filenames

我循环浏览了很多文件,我需要从每个名称中删除'.jpg'.

示例文件名:

20403y.jpg 
Run Code Online (Sandbox Code Playgroud)

但我只需要

20403y
Run Code Online (Sandbox Code Playgroud)

如果有帮助,所有文件名都以'y'结尾.

Buc*_*orn 5

一种方法是使用正则表达式:

filename = 'myfilename.jpg';
pattern = '.jpg';
replacement = '';
regexprep(filename,pattern,replacement)
Run Code Online (Sandbox Code Playgroud)

结果:

ans =

myfilename
Run Code Online (Sandbox Code Playgroud)

如果单元数组中的文件名将单元格数组提供给regexprep.正如文档所解释的那样,"如果str是字符串的单元格数组,则regexprep返回值s始终是具有与str相同维度的字符串的单元格数组."

例:

myfilenames = {'myfilename.jpg' 'afilename.jpg' 'anotherfilename.jpg' };
newfilenames= regexprep(myfilenames,'.jpg','');
Run Code Online (Sandbox Code Playgroud)

结果:

newfilenames = 

    'myfilename'    'afilename'    'anotherfilename'
Run Code Online (Sandbox Code Playgroud)