How do I join a single string with multiple strings?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Tom Wright
am 17 Okt. 2013
Kommentiert: Tom Wright
am 17 Okt. 2013
Hi, I know I can do this with loops but there must be a nicer way.
basepath='/data/';
filebase='video_';
fileext='.avi';
files=['00a' '00b' '00c'];
I'd like the output to be the vector
['/data/video_00a.avi' '/data/video_00b.avi' '/data/video_00c.avi']
(although I'd also be happy with a vertical matrix.
Thanks Tom
1 Kommentar
Matt Kindig
am 17 Okt. 2013
Bearbeitet: Matt Kindig
am 17 Okt. 2013
Are you sure you don't want 'files' to be a cell array? Because the way you've defined files, it will just concatenate 00a, 00b, etc. as one string. Observe:
files=['00a' '00b' '00c']
% files = '00a00b00c'
This is probably less useful to you. Instead, define 'files' as:
files = {'00a', '00b', '00c'}
Akzeptierte Antwort
Azzi Abdelmalek
am 17 Okt. 2013
Bearbeitet: Azzi Abdelmalek
am 17 Okt. 2013
basepath='/data/';
filebase='video_';
fileext='.avi';
files={'00a', '00b', '00c'}
cellfun(@(x) sprintf([basepath filebase '%s' fileext],x),files,'un',0)
Look at
doc cell
Weitere Antworten (1)
Vivek Selvam
am 17 Okt. 2013
Here you go, Tom.
basepath = '/data/';
filebase = 'video_';
fileext = '.avi';
files = ['00a'; '00b'; '00c'];
n = size(files,1);
horzcat(repmat(basepath,n,1), repmat(filebase,n,1), files, repmat(fileext,n,1))
0 Kommentare
Siehe auch
Kategorien
Mehr zu Structures finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!