How to select the first letter of every word

I have no idea how I would go about doing this
Input: I like eating pizza Output: Ilep

 採用された回答

Mohammad Abouali
Mohammad Abouali 2015 年 12 月 5 日
編集済み: Mohammad Abouali 2015 年 12 月 5 日

1 投票

str='I like eating pizza';
str2=cellfun(@(c) c(1),strsplit(str))

6 件のコメント

Krish Desai
Krish Desai 2015 年 12 月 7 日
Any ways to do this with loops? Just another way of doing it...I tried running this but it failed multiple hidden tests.
Walter Roberson
Walter Roberson 2015 年 12 月 7 日
You will need to define "word". What is the first letter of the word "23skidoo" ? What is the first letter of each word in the question "What is the first letter of each word in the question "What is the first letter of each word in the question?"" ? What is the first letter of each word of "3 o'clock AM" ?
Mohammad Abouali
Mohammad Abouali 2015 年 12 月 8 日
編集済み: Mohammad Abouali 2015 年 12 月 8 日
I am not sure what is "multiple hidden tests". But here is the loop form of the code:
str='I like eating pizza';
splittedStr=strsplit(str);
str2='';
for idx=1:numel(splittedStr)
str2(end+1)=splittedStr{idx}(1);
end
Krish Desai
Krish Desai 2015 年 12 月 10 日
Walter, In 23skidoo, the first letter would be the s. In "3 o'clock AM" the output should be oA.
Krish Desai
Krish Desai 2015 年 12 月 10 日
Also how would I be able to eliminate extra spaces? For instance if the input was ' I like eating pizza'?
Krish Desai
Krish Desai 2015 年 12 月 10 日
Function strtrim to fix this problem.

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCharacters and Strings についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by