Hi, Could I please have some help?
Firstly, typing this into matlab: cellArray1 = {'hi', 'harry', 'potter'} , outputs a 1x3 cell array: cellArray1 =
'hi' 'harry' 'potter'
Now, I want to make a cell array exactly like above but from a String of words such as: text = 'hi harry potter'.
Can anyone please help? I cant figure how to make my text go into a 1x3 cell array :(
Thanks

댓글 수: 2

Thomas Blackwood
Thomas Blackwood 2017년 6월 1일
편집: Thomas Blackwood 2017년 6월 1일
Try the strcat function.
If you take your string you can try:
strcat(cellArray1{1}, 32, cellArray1{2}, 32, cellArray1{3})
If you're wondering what the 32 is about check the ASCII table codes.
Jan
Jan 2017년 6월 2일
@Thomas: The question is tricky. tom did not want to concatenate the strings, but to split them.

댓글을 달려면 로그인하십시오.

 채택된 답변

Oleg Komarov
Oleg Komarov 2012년 2월 26일

0 개 추천

regexp('hi harry potter',' ','split')

추가 답변 (2개)

Jan
Jan 2012년 2월 26일

0 개 추천

Or:
C = textscan('hi harry potter', '%s')
S = C{1}';
Jan
Jan 2017년 6월 2일

0 개 추천

Since Matlab 2013a:
strsplit('hi harray potter')
And modern Matlab versions suggest:
split('hi harray potter')
which creates the new string class.
I'm still astonished that this job concerns the standard problem: Import a text file to a cell string. In R6.5 we needed to create a function to split a string into a cell string by our own. Then regexp('split') was introduced. Later on textread solved this (based on the underlying function dataread, until this was replaced by textscan. Cruel. This is a standard task and it is impossible to write it with backward compatibility.

카테고리

도움말 센터File Exchange에서 Characters and Strings에 대해 자세히 알아보기

질문:

2012년 2월 26일

댓글:

Jan
2017년 6월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by