extracting the last three characters from cell array
39 次查看(过去 30 天)
显示 更早的评论
[FileName,pathname,d] = uigetfile('*.SP3','Choose the products','MultiSelect','on');
FileName =
1×2 cell array
{'COD0MGXFIN_20210870000_01D_05M_ORB.SP3'} {'COD0MGXFIN_20210880000_01D_05M_ORB.SP3'}
When FileName consists of single file, I extract the last three characters of FileName as follows:
FileName(end-2:end)
When FileName consists of multiple files (as shown above), how can I extract the last three characters of FileName?
0 个评论
采纳的回答
Simon Chan
2021-7-17
Use cellfun to retrieve the last three charaters
FileNameinCell=cellfun(@(x) x(end-2:end), FileName, 'UniformOutput', false)
FileNameinCell =
{'SP3'} {'SP3'}
FileNameinCell{1} , FileNameinCell{2}, etc =
'SP3'
0 个评论
更多回答(1 个)
Rik
2021-7-17
You probably want to extract the extension, instead of hard-coding the last three characters:
data={'COD0MGXFIN_20210870000_01D_05M_ORB.SP3','COD0MGXFIN_20210880000_01D_05M_ORB.SP3'};
[~,~,ext]=cellfun(@fileparts,data,'UniformOutput',false);
YouWant=strrep(ext,'.','')
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!