How to put the lengths of each string in a cell array of strings into a single vector?
12 views (last 30 days)
Show older comments
I have tried in vain to put this one together. This does work: s = seq(n,:),where n is the specific line for a the string. I've tried using the length and size functions, but I can't get the individual row lengths into a vector. I've also searched through the function lists and looked for similar questions. Ideally, I want to index the cell's in their original order, and put the index number next to the length value. I know how to create a vector with numbers 1 to 100 --v = 1:1:100, but I'm not sure how to line that up and add it to the string array. I apologize for my newbiness, I admit this is a beginner question. Any feedback is appreciated. thx
0 Comments
Accepted Answer
Ken Atwell
on 6 Jun 2011
If I understand your question correctly:
A = {'Hello', 'World!!!'}
B = cellfun(@length, A)
cellfun executes a function over every element in a cell array.
More Answers (2)
Rob Graessle
on 6 Jun 2011
Not a particularly elegant solution, but it works:
>> a={'the', 'quick', 'brown', 'fox'}
a =
'the' 'quick' 'brown' 'fox'
>> for ii=1:length(a), wordLengths(ii)=length(a{ii}); end
>> wordLengths
wordLengths =
3 5 5 3
0 Comments
See Also
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!