- "..." scalar string
- '...' character vector
Why array of strings are concatenated?
14 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Zeynab Mousavikhamene
il 4 Nov 2019
Commentato: Star Strider
il 4 Nov 2019
parameters=['K13','K24','K_52','K63','K74','K80','K101','K114','K162','MI','Ce','Ge','Pe'];
When I use:
size(parameters)
I get this:
ans =
1 39
But I wanted to get 1*13. I realized it concatenate all the strings to each other:
>> parameters
parameters =
'K13K24K_52K63K74K80K101K114K162MICeGePe'
How can I define it so that they become separated.
2 Commenti
Star Strider
il 4 Nov 2019
Note that string arrays were introduced in R2016b. Prior to that, strings and character arrays were considered to be the same thing.
Risposta accettata
Star Strider
il 4 Nov 2019
The square brackets [] are a concatenation operator.
To keep the individual strings as strings, use a cell array:
parameters = {'K13','K24','K_52','K63','K74','K80','K101','K114','K162','MI','Ce','Ge','Pe'};
Note the curly brackets {} denoting a cell array.
2 Commenti
ME
il 4 Nov 2019
This is the same suggestion I made five minutes before!
In fairness though you've actually explained the problem rather than just giving the solution as I did!
Star Strider
il 4 Nov 2019
@ME — Frequently, more than one person is in the process of writing an Answer to a particular Question at the same time. For more detailed Answers that require documentation references, it takes longer. If my Answer essentially duplicates a posted Answer when I discover it, I delete mine. If I believe it adds something, I leave it up.
I almost always delete my Answers if they are not Accepted.
Più risposte (1)
ME
il 4 Nov 2019
You could just store this in a cell array instead - with one parameter inside each cell
0 Commenti
Vedere anche
Categorie
Scopri di più su Characters and Strings in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!