fill up a cell array with string elements

5 vues (au cours des 30 derniers jours)
Ellen De Jonghe
Ellen De Jonghe le 13 Jan 2020
Commenté : Fangjun Jiang le 26 Fév 2020
Hye
I have to write a function that puts the words of a string in a cell array.
I've made the following script.
I already get a cell array with the right amount of cells, but they are all filled up with the first word of the string.
How do I get this right?
function [words] = giveWords(sentence)
k = split(sentence);
words = cell(1,length(k));
words(1,:) = k(1,:);
end

Réponses (2)

Fangjun Jiang
Fangjun Jiang le 13 Jan 2020
This is all you need
words=split('this is a sentence.')
  3 commentaires
Fangjun Jiang
Fangjun Jiang le 14 Jan 2020
It depends on the data type of the input. In your case, you can add one more line to convert it
words=mat2cell(names,repmat(1,1,size(names,1)),repmat(1,size(names,2),1))
Fangjun Jiang
Fangjun Jiang le 26 Fév 2020
or use cellstr(split("This is a sentence"))

Connectez-vous pour commenter.


Jonathan Allen
Jonathan Allen le 26 Fév 2020
Replace last 2 lines with
[words(:)] = {k{:}};

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