Effacer les filtres
Effacer les filtres

Create an array of strings

31 vues (au cours des 30 derniers jours)
Viesturs Veckalns
Viesturs Veckalns le 21 Oct 2017
I try to create an array of strings
fruit = ['apple', 'cherry']
What modifications are needed so that fruit(2) is 'cherry' not 'p'?
UPDATE
Following the two first answers to this question I created a case:
style = {'.blue', '.red'};
f1 = figure;
for theta = (0:0.1:1)*pi
for ind = 1:2
figure(f1);
plot(theta, cos(theta + pi*ind), style(ind)); hold on;
end
end
The code does not accept style(ind) as an argument. The error message is
Error using plot
Invalid first data argument
  2 commentaires
per isakson
per isakson le 21 Oct 2017
Modifié(e) : per isakson le 21 Oct 2017
"does not accept style(ind) as an argument" That's because it is a cell array of strings, not a character string. I guess the error message said so.
Replace
style(ind)
by
style{ind}
with curly braces.
Viesturs Veckalns
Viesturs Veckalns le 21 Oct 2017
That worked

Connectez-vous pour commenter.

Réponse acceptée

per isakson
per isakson le 21 Oct 2017
Modifié(e) : per isakson le 21 Oct 2017
>> fruit = {'apple', 'cherry'}
fruit =
'apple' 'cherry'
with curly braces creates a cell array of strings. I use R2016a. The display format for cell arrays has been changed. And to reference one of the strings
>> fruit{2}
ans =
cherry
See Create Cell Array. Note the links at the bottom of the page.

Plus de réponses (1)

Birdman
Birdman le 21 Oct 2017
fruit = ['apple,cherry'];
fruit=strsplit(fruit,',');
disp(fruit(2))

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by