How can i split between strings that connected with under score?

" x= 'Penelope_Cruz' 'Gary_Cooper' 'Tony_Curtis' 'Jim_Carrey'"

I want to split x into two different variables, like this:

a= 'Penelope' 'Gary' 'Tony' 'Jim'

b= 'Cruz' 'Cooper' 'Curtis' 'Carrey'

I want to do it for unknown amount of names.

 Accepted Answer

one solution:
x={ 'Penelope_Cruz' 'Gary_Cooper' 'Tony_Curtis' 'Jim_Carrey'};
for i=1:length(x)
temp=strsplit(x{i},'_');
a(i)=temp(1);
b(i)=temp(2);
end

More Answers (1)

T = regexp(x, '_', 'split');
a = cellfun(@(C) C{1}, T);
b = cellfun(@(C) C{2}, T);

Asked:

on 23 May 2015

Answered:

on 23 May 2015

Community Treasure Hunt

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

Start Hunting!