Clear Filters
Clear Filters

Separate numerical and txt string into two different strings

1 view (last 30 days)
Hello people
I have a string M_b = '1000 km' and I want to separated to M_b1 = 1000 (a numerical string) and to M_b2 = km (a text string).
To tell the truth only M_b1 is of importance for me. But the data comes from an excel and by using xlsread I can only transfer the data to matlab as txt.
I tried multiple things without any success like: M_b1 = str2num('M_b') [M_1b,M_2b] = strread('M_b', %s) [M_1b,M_2b] = strread (sprintf('M_b'), %s) M_b1 = textscan(M_b,'%s')
I am new to matlab but I can learn fast Thank you for your time

Accepted Answer

Alexandros
Alexandros on 16 Nov 2011
It looks better but it stills give me
??? Error using ==> textscan First input must be of type double or string.
  4 Comments
Fangjun Jiang
Fangjun Jiang on 16 Nov 2011
I would not use the same variable 'M_b' for the two return arguments. It can be done but it's confusing. Maybe you just have a typo. [M_b, M_b] = xlsread ('1.xls', 2, D14).
Anyway, M_b most likely is a cell array, so you need to do M_b1 = textscan(M_b{1},'%f')

Sign in to comment.

More Answers (2)

Fangjun Jiang
Fangjun Jiang on 16 Nov 2011
You are close.
M_b = '1000 km';
M_b1 = textscan(M_b,'%f')

Alexandros
Alexandros on 17 Nov 2011
But now it gets more complecated
I have a string
A = xlsread('1.xls', 1, 'D12') A = 'Audi A4 Avant FTSI Flex Man 1984cc 132kw Euro5A [AI002]'
Now i want
A1 = 'Audi'
A2 = ' A4 Avant FTSI Flex Man'
A3 = '1984' without the cc
A4 = '132' without the kw
A5 = 'Euro5A'
Is this separation doable? and if it is how it can be done? I think is too complex
  1 Comment
Alexandros
Alexandros on 17 Nov 2011
I did
B = strread (A{1}, '%s')
But it gives me
??? Error using ==> dataread
Badly formed format string.
Error in ==> strread at 51
[varargout{1:nlhs}]=dataread('string',varargin{:});
Normaly it should work. Any ideas?

Sign in to comment.

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!