フィルターのクリア

How to count length of array?

3 ビュー (過去 30 日間)
Jan Donyada
Jan Donyada 2011 年 8 月 31 日
hi all, im using GUIDE to form my gui.
function pushbutton1_Callback(hObject, eventdata, handles)
words = get(handles.editbox, 'string');
wordsarray = textscan (words, '%s'); %this splits up the string into an array
max_words = length(wordsarray) %this is supposed to count the number of words in the array
disp (max_words)
now, no matter how many words are keyed into the editbox, the only value returned is 1, when it should actually output the number of words in the input string. i know textscan splits the string into an array of words and i suspect that its only counting one dimension (only the row or only the column, because it stores it in a 1xK array, where k is the number of words, i think). how do i make disp() display the other dimension? or is there another function to output K from a 1xK array?

採用された回答

Fangjun Jiang
Fangjun Jiang 2011 年 8 月 31 日
wordsarray is a cell array so the length is 1. try length(wordsarray{1})
  2 件のコメント
Jan Donyada
Jan Donyada 2011 年 8 月 31 日
thanks guys. can u explain what the addition does? jus trying to understand what i'm coding.
Fangjun Jiang
Fangjun Jiang 2011 年 8 月 31 日
textscan() returns result in cell array. {} is used to reference the element of the cell array, just like () is used to reference double array. Since you have only one '%s' in your format string for textscan(), so your result is always in wordsarray{1}, which itself is a cell array of strings. wordsarray{1}{1} will be the first word.

サインインしてコメントする。

その他の回答 (1 件)

Rick Rosson
Rick Rosson 2011 年 8 月 31 日
Hi Jan,
Please try the following:
max_words = length(wordsarray{1});
HTH.
Rick
  1 件のコメント
Jan Donyada
Jan Donyada 2011 年 8 月 31 日
thanks guys. can u explain what the addition does? jus trying to understand what i'm coding.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeNumeric Types についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by