handling arrays of strings

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 comentarios

James Tursa
James Tursa el 17 de Feb. de 2015
It is not clear what is the desired outcome? If you don't want a cell array of individual strings (as the above produces if you get rid of the final comma), then what do you want as an outcome?
per isakson
per isakson el 17 de Feb. de 2015
Editada: per isakson el 17 de Feb. de 2015
  • "create an array of strings" &nbsp is that cell array of strings?
  • "Signals = cellstr('Signals')" &nbsp what's the intent with this line?
  • "be easily changed" &nbsp is that easily easily edited in the editor?
James Holland
James Holland el 17 de Feb. de 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 el 17 de Feb. de 2015
Editada: per isakson el 17 de Feb. de 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'
});

Iniciar sesión para comentar.

Respuestas (1)

pankhuri kasliwal
pankhuri kasliwal el 25 de Jun. de 2019
Editada: pankhuri kasliwal el 25 de Jun. de 2019

0 votos

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.

Categorías

Más información sobre Characters and Strings en Centro de ayuda y File Exchange.

Productos

Preguntada:

el 17 de Feb. de 2015

Editada:

el 25 de Jun. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by