construc a string from other strings and variables
3 views (last 30 days)
Show older comments
I am just trying to construct a single string to use as a file name, from several other strings and variables. Should be simple, but I cannot get the syntax right. For example:
subj = 'A2';
ndip = '2503';
nroi = '68';
band = '2-4';
fil_nam = [subj '_b' band '_d' ndip '_s' nroi];
fil_nam is created as a cell array, so how do I force it to be a string? Or convert to string?
Thanks
1 Comment
Walter Roberson
on 10 Feb 2014
Please re-check your actual code to see if you possibly used {} instead of [] ?
Answers (2)
Azzi Abdelmalek
on 10 Feb 2014
If fil_nam is a cell array
fil_nam = {subj '_b' band '_d' ndip '_s' nroi}
out=strjoin(fil_nam)
2 Comments
Walter Roberson
on 10 Feb 2014
strjoin() puts a space between the parts by default. You can specify '' as the delimiter to avoid the space. If you are going to do that then you might as well use
out = cat(2, fil_name{:});
per isakson
on 10 Feb 2014
Edited: per isakson
on 11 Feb 2014
I find sprintf to be the best function to combine fixed strings and values of string (and numeric) variables into one string. Thus,
sprintf( '%s_b%s_d%s_s%s', subj, band, ndip, nroi )
returns
ans =
A2_b2-4_d2503_s68
0 Comments
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!