read in text file and place each word of the sentence it's own separate cell

1 view (last 30 days)
I have a text file with a bunch of sentences. There is one sentence per line and I would like read each sentence in and place it in a cell array so that each word of each sentence is in its own separate cell. I am guessing that I would use strsplit?
Right now I have a .mat file where each sentence is in its own cell but I want to further delimit them so that every word is in it's own cell. If I have 10 four word sentences, I would like to have a 1x10 cell array so that when I click on each cell, the sentence is separated into four cells.

Accepted Answer

Marc Jakobi
Marc Jakobi on 11 Oct 2016
Edited: Marc Jakobi on 11 Oct 2016
If you already have a cell array C with the separated sentences:
D = cell(1, length(C));
for i = 1:length(C)
c = strsplit(regexprep(C{i}, {',', ';', ',', ':'}, {'', '', '', ''}), ' ');
D(i,1:length(c)) = c;
end
Note: You may have to add more symbols to the rexexprep arguments.
  3 Comments
Marc Jakobi
Marc Jakobi on 11 Oct 2016
So like this?
C = cell(1, 10);
for i = 1:10
C{i} = strsplit(sent_all{i}); %note the difference between curly brackets and regular ones for cell arrays
end

Sign in to comment.

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!