将句子分成单词并计算每个单词中字符“a”的数量

时间:2015-06-21 21:17:25

标签: matlab

我需要用大写字母输入句子,然后将句子分成单词,并为每个单词计数字符'a'

我做了这个

clear
sentences=input('Write your sentences: ','s');
low=lower(sentences);
disp('Sentences splitted to words: ');
words=regexp(low,' ','split');
for i=1:length(words)
    disp(words(i))
end

现在我不知道如何在分割后计算每个单词中的字符'a',因为这些单词被转换为单元格。 有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

要处理每个单元格,请使用cellfunanonymous function来计算每个单词中'a'出现的次数:

count = cellfun(@(w) sum(w=='a'), words);

您可以等效地使用循环:

N = numel(words);
count = NaN(1,N); %// preallocate for speed
for n = 1:N
    w = words{n};
    count(n) = sum(w=='a');
end