How can I concatenate a string array of a dimension 1x N into one cell

4 次查看(过去 30 天)
Hello community,
I want to accomplish the following with my code:
  • Originally I don't know the number of names in array A and I have to group them in just one cell concatenating them with the delimiter "/". I tried the for loop with no success and it is not necessary at all. Any hints on how I can accomplish this? I appreciate all the help.
  1 个评论
Stephen23
Stephen23 2022-7-12
As well as JOIN() as Chunru showed here are a few other approaches:
A = {'ABC','DEF','HIJK'};
B = char(join(A,'/'))
B = 'ABC/DEF/HIJK'
C = sprintf('/%s',A{:});
C = C(2:end)
C = 'ABC/DEF/HIJK'
D = cell2mat(strcat('/',A));
D(1) = []
D = 'ABC/DEF/HIJK'
A(2,1:end-1) = {'/'};
E = [A{:}]
E = 'ABC/DEF/HIJK'

请先登录,再进行评论。

采纳的回答

Chunru
Chunru 2022-7-12
编辑:Chunru 2022-7-12
% using cell array of char
A = {'ABC', 'DEF', 'HIJK'}
A = 1×3 cell array
{'ABC'} {'DEF'} {'HIJK'}
B = join(A, '/')
B = 1×1 cell array
{'ABC/DEF/HIJK'}
% using string
C = string(A)
C = 1×3 string array
"ABC" "DEF" "HIJK"
C = join(C, '/')
C = "ABC/DEF/HIJK"

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

产品


版本

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by