handling arrays of strings

7 views (last 30 days)
James Holland
James Holland on 17 Feb 2015
Edited: pankhuri kasliwal on 25 Jun 2019
I want to create an array of strings in a manner that allows the strings to be easily changed, I would like something like this:
Signals = cellstr('Signals');
horzcat(Signals,...
'SignalName1',...
'SignalName2',...
'SignalName3',...
'SignalName4',...
'SignalName5', );
The problem is that horzcat merges the strings, is there a simple way to achieve this? James
  4 Comments
James Holland
James Holland on 17 Feb 2015
The idea of the first line was to create a cell array with the header 'signals' that would then have the actual signal names appended. I must have done something wrong when I tried this because I was getting all the strings merged together; I have tried it again and it works correctly - I'll call that a senior moment. Thank you.
per isakson
per isakson on 17 Feb 2015
Edited: per isakson on 17 Feb 2015
I often use this way to write cell arrays of strings in code. The string 'SignalName3' is commented out. It is easy to read and edit. Often I want a row to use in a for-loop: &nbsp for signal = Signals
Signals = {
'Signals'
'SignalName1'
'SignalName2'
... 'SignalName3'
'SignalName4'
'SignalName5'
};
Signals = transpose({
'Signals'
'SignalName1'
'SignalName2'
... 'SignalName3'
'SignalName4'
'SignalName5'
});

Sign in to comment.

Answers (1)

pankhuri kasliwal
pankhuri kasliwal on 25 Jun 2019
Edited: pankhuri kasliwal on 25 Jun 2019
Signals= cellstr('Signals');
Signals = [Signals, 'SignalName1'];
Signals = [Signals, 'SignalName2'];
This way it won't merge the strings all together, you will get all the strings in an array.

Products

Community Treasure Hunt

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

Start Hunting!