I have a function that i want to return the first and last word from a string. so for example firstAndLast('matlab') should give me (m,b), however i am only able to get the first letter from this function?
function [first,last] = firstAndLast(instring)
first=instring(1);
last=instring(length(instring));
end

6 件のコメント

Stephen23
Stephen23 2016 年 5 月 5 日
編集済み: Stephen23 2016 年 5 月 5 日
Your question is not clear: you write that you "want to return the first and last word from a string", but then your example seems to return the first and last letters: "firstAndLast('matlab') should give me (m,b)"
Which do you really want: the letters (like your example), or the words (like your explanation) ?
Ian Tee
Ian Tee 2016 年 5 月 5 日
opps sorry, to clarify i would enter the word and input it as a string in the function. Therefore i would like to extract the first and last input of the string.
Stephen23
Stephen23 2016 年 5 月 5 日
What does "extract the first and last input of the string" mean ?
Do you want the first and last letters, or words ?
Ian Tee
Ian Tee 2016 年 5 月 5 日
letters
Stephen23
Stephen23 2016 年 5 月 5 日
編集済み: Stephen23 2016 年 5 月 5 日
This is what your code does: I suspect that the problem is that were calling your function with only one output, instead of the two that it requires. In any case, in my answer I gave you a simpler way of doing this.
Ian Tee
Ian Tee 2016 年 5 月 5 日
Thank you very much :) , turns out calling it was the problem.

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

 採用された回答

Stephen23
Stephen23 2016 年 5 月 5 日
編集済み: Stephen23 2016 年 5 月 5 日

2 投票

Words
>> C = regexp('the quick brown fox','\S+','match');
>> C([1,end])
ans =
'the' 'fox'
Letters
>> fun = @(s)s([1,end]);
>> fun('matlab')
ans =
mb

その他の回答 (0 件)

カテゴリ

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

質問済み:

2016 年 5 月 5 日

コメント済み:

2016 年 5 月 5 日

Community Treasure Hunt

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

Start Hunting!

Translated by