creating a list from another list

I have a list where not all the elements are the same length but they mostly are lets say my list is
mylist = {'ABCD', 'DEFG', 'HIJKL'} i want to return a new list mynewlist looks like {ABC, DEF, GHI} %%- its always the first 3 letters of the old list
many thanks probably seems a bit arbtirary but struggling

 Accepted Answer

mylist = {'ABCD', 'DEFG', 'HIJKL'}
out=cellfun(@(x) x(1:3),mylist,'un',0)

More Answers (1)

>> mylist = {'ABCD', 'DEFG', 'HIJKL'}
mylist =
'ABCD' 'DEFG' 'HIJKL'
>> cellfun( @(str) str(1:3), mylist, 'uni', false )
ans =
'ABC' 'DEF' 'HIJ'
>>

1 Comment

i think both answers are good - i didnt realise you could only accept one - many thanks to both.

Sign in to comment.

Categories

Tags

Community Treasure Hunt

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

Start Hunting!