How to convert a 1x1 cell to a string?

How to convert a 1x1 cell like {'line'} to a character vector like 'line', or a string like "line" please. thx

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 13 Nov 2024
Modifié(e) : MathWorks Support Team le 13 Nov 2024

67 votes

To convert a cell array of character vectors to a character array, use the “char” function. A = {'line'} B = char(A) To extract the contents from a cell, index using curly braces. A = {'line'} B = A{1} Starting in R2016b, you can store text in string arrays. To convert a cell array to a string array, use the “string” function. A = {'line'} B = string(A) For more information, please refer to the MathWorks documentation on Cell Arrays of Character Vectors and Text in String and Charater Arrays.

6 commentaires

Powen Ru
Powen Ru le 8 Jan 2018
Modifié(e) : Powen Ru le 8 Jan 2018
Thanks. It works.
If you are using a recent version of MATLAB you may find that a string or string array is more convenient then the character array created in the above example and by the char function:
>> string({'one'})
ans =
"one"
>> string({'one','two'})
ans =
1×2 string array
"one" "two"
Raman Shrestha
Raman Shrestha le 6 Déc 2018
it has done magic to me thanks a lot
Yusuf Selim KARATAS
Yusuf Selim KARATAS le 15 Fév 2019
Thanks Azzi Abdelmalek. Works perfect.
Junho Kweon
Junho Kweon le 25 Avr 2019
That's a piece of cake. Thanks a lot!
Paula Camila
Paula Camila le 19 Fév 2023
gracias

Connectez-vous pour commenter.

Plus de réponses (2)

Image Analyst
Image Analyst le 1 Fév 2015
Azzi showed you how to extract the string from a cell. Another way is to convert the cell with char():
ca={'line'} % This is our cell array.
str = char(ca) % Convert it to a character array (string).
Net, both give the same result, just different ways of getting there. If your cell array is only a single solitary cell, then you should not even use a cell in the first place - use a string.
Even if you have more than 1 string in our cell array, an easy way can be:
S = {'Hello',' ','world'}
ss = [S{:}]

5 commentaires

Nisha Satia
Nisha Satia le 15 Fév 2021
How to covert cell into string and delimited with space to store into matrix
Is this what you mean?
ca = {'Hello',' ','world'} % Cell Array.
charArray = [ca{:}]
str = convertCharsToStrings(charArray)
If not, start a new question and give your starting cell, and expected output.
Maybe you are looking for this:
S = {'Hello','World'};
s2 = cell(1,length(S)); s2(:)={' '};
ss = [S;s2];
ss = [ss{:}]
Image Analyst
Image Analyst le 15 Fév 2021
Just a point of clarification. ss is a character array while str is a string. A few versions ago, MATLAB made these different types of variables, though in common speech, people call either one "strings".
Right. Thanks.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by