Split a cell that contains a string
조회 수: 13 (최근 30일)
이전 댓글 표시
I have a cell u(38,1) each row has string looking like this :
for example u{1,1} = ''198823 765389 white''
u{2,1} = ''198426 725312 black''
I want the cell u to be divided in 3 colomns such as
u{1,1} = ''198823'' u{1,2}= ''765389'' u{1,3}=''white''
u{2,1} = ''198426'' u{2,1}= ''725312'' u{2,3}=''black''
so basically I want my u(38,1) to become u(38,3)
I have tried strplit, but it seems like it won't work with a cell,
strplit(u,',') %doesn't work'
strplit(u{1,1},',') %works on the first line and returns a cell (1,3)
댓글 수: 0
채택된 답변
Cris LaPierre
2020년 10월 26일
Here's an example of one way of doing this.
u{1,1} = "198823 765389 white";
u{2,1} = "198426 725312 black"
a=cellfun(@strsplit,u,'UniformOutput',false);
a=vertcat(a{:})
댓글 수: 2
Cris LaPierre
2020년 10월 26일
편집: Cris LaPierre
2020년 10월 26일
Actually, why keep this a cell? This can be done much simpler if you use strings.
u{1,1} = "198823 765389 white";
u{2,1} = "198426 725312 black"
% Convert cell array to a string array.
u2 = string(u)
a2 = split(u2)
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Characters and Strings에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!