Finding specific phrases within a cell array (1)
2 views (last 30 days)
Show older comments
Greetings,
I am working with a total of nine(9) text strings within nine(9) cell ( {9x1} )
and I am trying to take specific sentences of the text strings.
For example, one text string says:
EAST WINDS 15 TO 20 KNOTS. SEAS 4 TO 6 FEET.
I am trying to divide these two sentences in two structured variables under the name Today.
Today.Winds = EAST WINDS 15 TO 20 KNOTS
Today.Waves = SEAS 4 TO 6 FEET
The 9 different strings represents the 7 days of the week, plus today and night forecast, resulting in 9 different strings
The other strings outputs would go like this:
Tonight.Winds = EAST NORTHEAST WINDS 10 TO 14 KNOTS
Tonight.Waves = SEAS 3 TO 5 FEET
Monday.Winds = EAST WINDS 14 TO 19 KNOTS
Monday.Waves = SEAS 4 TO 6 FEET
I was thinking of telling MATLAB to break when he reaches the first dot and imprint the string as Today.wind, then continue till the next dot, break and imprint it as Today.waves.
How can I do this?
Thank you for your time.
2 Comments
Jan
on 16 Jul 2012
Please stop posting multiple questions about one problem. What should happen with the thread http://www.mathworks.com/matlabcentral/answers/43667-finding-specific-phrases-within-a-cell-array now? Such duplicate questions confuse the readers. It is better to add new information by editing the original question and to mark changes by adding the key "[EDITED]".
Accepted Answer
C.J. Harris
on 16 Jul 2012
See 'strtok' as one possible solutions. For example:
celltxt{1} = 'EAST WINDS 15 TO 20 KNOTS. SEAS 4 TO 6 FEET.';
[tok, rem] = strtok(celltxt{1}, '.');
Tonight.Winds = tok;
Tonight.Waves = rem(3:end-1); % removing first two and last character
6 Comments
C.J. Harris
on 18 Jul 2012
Well Juan, that would all depend on how you are storing the text. Are you using a cell array?
More Answers (0)
See Also
Categories
Find more on Cell Arrays 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!